Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

bat reg auslesen software

Frage Entwicklung Batch & Shell

Mitglied: masterdns

masterdns (Level 1) - Jetzt verbinden

24.11.2008, aktualisiert 14:20 Uhr, 6737 Aufrufe, 7 Kommentare

ich habe folgendes problem

ich möchte mit einer bat datei die installierte software aus der reg auslesen
das problem dabei ist das in der reg keys sind die leezeichen enthalten
den pfad hklm\software..... hatte ich auch mal in "" gesetzt aber bringt ja nichts da die keys die leerzeichen enthalten

jemand eine lösung?

set log=\\logs\%computername%.txt
set logg=\\logg\%computername%.txt

echo. >%log%
For /f %%a in ('reg query hklm\software\microsoft\windows\currentversion\uninstall') do (call :process_query %%a)

find /i "DisplayName" < %log% | sort > %logg%
goto :eof

:process_query
set KEY=%1
reg query %key% /v DisplayName >>%log%
goto :eof
Mitglied: Biber
24.11.2008 um 09:57 Uhr
Moin masterdns,

wattn Nick und wattn Beitragstitel. Respekt.

Du musst, wenn eine Rückgabe mit Leerzeichen oder, auf bätchisch, mit mehreren Token zurückkommen kann, der FOR/F-Anweisung noch ein "delims=" (=Anweisung keine Delimiter=nimm komplette Ausgabe) mitgeben.

Mit zusätzlichem "delims=" erhältst Du am CMD-Prompt (proof-of-concept):
[diese drei Zeilen einzeln/nacheinander Copy & Pasten; erste zeile ist optional]
01.
mode con cols=166 lines=55 
02.
set "RegKey=hklm\software\microsoft\windows\currentversion\uninstall" 
03.
(for /f "delims=" %i in ('reg query %regkey%') do @Reg query "%i" /v DisplayName 2>nul|find /i "Displayname")|sort
Ausgabe z.B.
01.
..... 
02.
.... 
03.
    DisplayName REG_SZ  Windows Workflow Foundation 
04.
    DisplayName REG_SZ  Windows XP-Hotfix - KB873339 
05.
    DisplayName REG_SZ  Windows XP-Hotfix - KB885250 
06.
    DisplayName REG_SZ  Windows XP-Hotfix - KB885835 
07.
    DisplayName REG_SZ  Windows XP-Hotfix - KB885836 
08.
    DisplayName REG_SZ  Windows XP-Hotfix - KB888113 
09.
    DisplayName REG_SZ  Windows XP-Hotfix - KB888302 
10.
    DisplayName REG_SZ  Windows XP-Hotfix - KB890859 
11.
....
Grüße
Biber
Bitte warten ..
Mitglied: masterdns
24.11.2008 um 10:43 Uhr
also bringt auch keinen unterschied
die ausgabe ist ja richtig nur kann er die reg nicht richtig auslesen alles wo leerzeichen sind kann er nicht auslesen
z.B. VLC media player
displayname mit leerzeichen kann er auslesen nur die keys nicht
Bitte warten ..
Mitglied: Biber
24.11.2008 um 11:39 Uhr
kann ich nicht bestätigen
dreh doch die bedingung um so dass nur alle reg-subkeys ausgegeben werden die keinen wert für displayname enthalten
01.
for /f "delims=" %i in ('reg query %regkey%') do @Reg query "%i" /v DisplayName >nul|| echo "%i"
bei mir erscheinen dann sowohl subkeys mit leerzeichen wie auch ohne aber weil kein schlüssel displayname vorhanden ist
bsp
.... 
Fehler: Der angegebene Registrierungsschlüssel oder Wert konnte nicht gefunden werden. 
"HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\uninstall\MsJavaVM" 
 
Fehler: Der angegebene Registrierungsschlüssel oder Wert konnte nicht gefunden werden. 
"HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\uninstall\Nero - Burning Rom!UninstallKey" 
....
Bitte warten ..
Mitglied: masterdns
24.11.2008 um 11:51 Uhr
???
wieso die keinen wert für displayname enthalten?

kannst du mir mal die ganze bat schicken die bei dir funktioniert?

weil ich bekomm die fehlermeldung
regkeyi" /v displayname >nul|| echo "i" was unexpected at this time
Bitte warten ..
Mitglied: Biber
24.11.2008 um 12:29 Uhr
Zitat von masterdns:
???
!!!
wieso die keinen wert für displayname enthalten?
beispiel
01.
>reg query "HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\uninstall\Nero - Burning Rom!UninstallKey" /s 
02.
 
03.
! REG.EXE VERSION 3.0 
04.
 
05.
HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\uninstall\Nero - Burning Rom!UninstallKey 
06.
    UninstallString     REG_SZ  C:\Programme\Ahead\nero\uninstall\UNNERO.exe /UNINSTALL 
07.
    DisplayIcon REG_SZ  C:\Programme\Ahead\nero\nero.exe 
08.
    SRCConcept  REG_DWORD       0x1 
09.
    #DisplayName        REG_SZ  Nero OEM 
10.
    ShowDisplayName     REG_DWORD       0x0
--> bei diesem subkey mit leerzeichen gibt es keinen key displayname sondern nur einen #displaynamen aber der wird ja nicht gefunden weil ich explizit den genauen schlüsselnamen angebe
kannst du mir mal die ganze bat schicken die bei dir funktioniert?
ich hab doch gar keine weil weil spiel doch noch am cmd prompt
weil ich bekomm die fehlermeldung
regkeyi" /v displayname >nul|| echo "i" was unexpected at this time
evtl hast du es ja as is in den batch übernommen aber dort müssen alle %i zu %%i werden und so weiter
Bitte warten ..
Mitglied: masterdns
24.11.2008 um 13:35 Uhr
hab das nun so aber kommt daselbe raus
noch immer nicht die mit leerzeichen:


set log=\\logs\%computername%.txt
set logg=\\logg\%computername%.txt
set RegKey="hklm\software\microsoft\windows\currentversion\uninstall"

echo. >%log%
For /f "delims=" %%a in ('reg query %regkey%') do (call :process_query %%a)

find /i "DisplayName" < %log% | sort > %logg%
goto :eof

:process_query
set KEY=%1
reg query %key% /v DisplayName >>%log%
goto :eof
Bitte warten ..
Mitglied: masterdns
24.11.2008 um 14:20 Uhr
super ich danke dir!!!!!!!!!!!!!!!!!!!!!!!!!!

nun geht alles perfekt
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Batch & Shell
Eventlog Druckjobs mit VBS auslesen (2)

Frage von joni2000de zum Thema Batch & Shell ...

LAN, WAN, Wireless
Software für Backup oder Datensynchronisation über WAN gesucht (3)

Frage von Rubiks zum Thema LAN, WAN, Wireless ...

Batch & Shell
gelöst Appx aus Image auslesen und entfernen (9)

Frage von Markus2016 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

DSL, VDSL
DSL-Signal bewerten (12)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (8)

Frage von StefanT81 zum Thema Windows Server ...

Backup
Clients als Server missbrauchen? (8)

Frage von 1410640014 zum Thema Backup ...