aprilmontag
Goto Top

batch-Datei die Software auslesen kann

Hi..Ich bastel mir gerade eine .bat-Datei, womit ich auf meinem Rechner sämtliche (installierte) Software + Version auslesen möchte. Versuche dazu auf die "registrierung" zuzugreifen........
Meine Bat sieht derzeit so aus....

@echo off

set "OutFile=regedit.txt"
set "Find=find.txt"

set "R=HKEY_LOCAL_MACHINE\Software"

if exist %OutFile% goto start
goto neuer_versuch

:start
regedit /e %OutFile% "%R%"
find "Version" %OutFile% > %Find%
find "ProductName" %OutFile% >> %Find%
del %OutFile%
exit

:neuer_versuch
echo neuer_versuch ist gestartet > %OutFile%
goto start


Wie kann ich das optimieren? Im Moment steht noch zu viel drin, was ich alles garnicht wissen möchte.
Ich will lediglich eine Liste, wo ich die ganze installierte Software + Version seh...

z.B.

mozilla v. 3.0
ie v. 6.0
etc.


Habe noch eine 2.te lösung erarbeitet bzw. meine 1.ste etwas geändert

siehe hier:

@echo off

set "OutFile=regedit.txt"
set "OutFile2=regedit2.txt"
set "Find=find.txt"

set "R=HKEY_LOCAL_MACHINE\SoftwareMicrosoft\Windows\CurrentVersion\Uninstall"
set "R2=HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\App Paths"

if exist %OutFile% goto start
goto neuer_versuch

:start
regedit /e %OutFile% "%R%"
regedit /e %OutFile% "%R2%"
find "Version" %OutFile% > %Find%
find "ProductName" %OutFile% >> %Find%
find "Version" %OutFile2% > %Find%
find "ProductName" %OutFile2% >> %Find%
del %OutFile%
del %OutFile2%
exit

:neuer_versuch
echo neuer_versuch ist gestartet > %OutFile%
goto start


Kann mir da einer helfen???

Danke
mfg Nick


ps. Hagen an der ganzen Sache ist, dass keine zusätzliche Software dafür benötigt werden soll. Es soll auch nicht erst etwas umgestellt oder ähnliches gamacht werden, deswegen entschied ich mich für eine bat

Content-ID: 92578

Url: https://administrator.de/contentid/92578

Ausgedruckt am: 23.11.2024 um 01:11 Uhr

Nailara
Nailara 22.07.2008 um 09:53:51 Uhr
Goto Top
Hi,

entscheide Dich mal für VBS und WMI und dann geht das ...

Grüße Mathias
aprilmontag
aprilmontag 22.07.2008 um 10:02:16 Uhr
Goto Top
mit WMI habe ich das auch schon versucht...allerdings immer wenn ich Softwareelement auslesen möchte kommt "ungültige Klasse"
Habe das bei MicroTech mir dann durchgelesen, wie man diesen Fehler beheben soll, allerdings funktioniert das nicht......
habe es wie folgt gemacht:

set ObjWMIService = GetObject("winmgmts:\" w2k3 "\root\cimv2:win32_Process")

und dann in die gleiche bat

wmic os get * /format:htable >os.html
wmic softwareelement get * /format:htable > soft.html

und es kommt immer wieder der gleiche Fehler.....
mach ich da vllt. etwas falsch?

// edit: Alles ausgehend von einem Windows 2003 Server
Nailara
Nailara 22.07.2008 um 10:28:52 Uhr
Goto Top
Grübel, grübel - WMI wird, wenn ich mich recht an meine letzte W2K3-Installation erinnere, per Default NICHT mit installiert. Ruf doch mal das Setup auf und schaue nach, ob das installiert wurde ...

Grüße Mathias
aprilmontag
aprilmontag 22.07.2008 um 10:49:32 Uhr
Goto Top
start -> Ausführen -> wmic .....dauert einen kurzen Augenblick und dann ist es installiert

kann os wunderbar aufrufen..es scheidert nur an softwareelement..."ungültige Klasse" Fehler Code: 0x80041010 ...ich finde keine brauchbare Lösung für das problem...auf meinem vista Rechner geht alles wunderbar -_- gleiche bat etc.
aprilmontag
aprilmontag 22.07.2008 um 11:37:20 Uhr
Goto Top
Habe mich auf der Microsoft-Seite noch einmal schlau gemacht. Sie meinen ja Hotfix und pi und pa und po...aber das kanns nicht sein. Sie selber raten ab diesen Hotfix zu installieren ;O
und das das ja alles ohne Nachinstalllationen funktionieren soll ist das wohl auch nicht die Lösung....
Ich weiß nur das die Lösung in deisem Pfad stecken muss...
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall