Top-Themen

Aktuelle Themen (A bis Z)

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

Registry mittels Batch auslesen

Frage Entwicklung Batch & Shell

Mitglied: Przigoda

Przigoda (Level 1) - Jetzt verbinden

30.06.2008, aktualisiert 20:48 Uhr, 6651 Aufrufe, 4 Kommentare

Hallo,

da ich mich hier neuangemeldet habe, bitte ich um Verzeihung falls die Kategorie doch nicht ganz passen sollte. Ich habe hier schon viele Lösungen für kleine Probleme gefunden, daher erstmal ein dickes Lob an alle die hier so fleißig antworten!!!

ich habe dank einigen Beiträgen hier mein Problem schon sehr weit lösen können, es gibt jedoch noch einige "unschöne Stellen" und nicht alllgemein funktionierende Dinge:

Ich möchte die aktuelle inst. Version von Adobe Acrobat ermitteln, und die SID des akt. Benutzers:

Bisher mache ich dies so:

01.
@cd "%userprofile%\Lokale Einstellungen\Anwendungsdaten\Microsoft\Credentials" 
02.
@FOR /F "tokens=*" %%i IN ('dir /A:D /B') do (SET sid=%%i)
gibt es hierfür auch eine schönere Möglichkeit, insbesondere bei engl. Windows gibt es "Lokale Einstellungen" schließlich nicht?

und weiter

01.
@Set /A Line=0 
02.
@for /F "delims=\ tokens=*" %%i in ('REG QUERY "HKEY_USERS\%sid%\Software\Adobe\Adobe Acrobat" /s') DO (    
03.
@   set /a Line+=1  
04.
@   echo %%i>> %Temp%\info.txt 
05.
@   REM if %Line% GEQ 4 GOTO LineReadEnd 
06.
@) 
07.
@:LineReadEnd
Ich will eigentlich nur wissen welche Unterordner in HKEY_USERS\%sid%\Software\Adobe\Adobe Acrobat existieren, dafür speicher ich allerdings zunächst die gesamte Sub-Reg in die info.txt und ich ich brauche eigentlich nur die 3. zeile aus der Reg. Ich schaffe es allerdings nicht mittels if einen Sprung zu setzen, der wird einfach ignoriert, daher habe ich den einkommentiert.
Ein Weiteres mögliches Probleme könnte die Installation von verschiedenen Adobe Acrobat Versionen sein, z.B. hat die 7.0 nach der Deinstallation bei mir noch Reste hinterlassen so, dass der Reg-Eintrag nicht zu Adobe 8.0 sondern 7.0 hinzugefügt wurde. Ich musste den 7.0 Ordner erstmal löschen, damit es funktionierte.

Ich habe über sie Suchfunktion auch eine andere Möglichkeit zum auslesen der Versionsnummer gefunden und zwar
WMIC product get...
nur kriege ich dann bei Adobe Acrobat nur "Programm = Adobe Version = Acrobat" aber ich keine Versionsnummer.

So ich hoffe ist ausführlich genug beschrieben, falls nicht ergänze ich natürlich noch...
vielen Dank für eure Hilfe im voraus.

gruß Nils
Mitglied: 60730
30.06.2008 um 12:00 Uhr
Servus und Willkommen

Von einem unserer Batchgurus hab ich folgenden Trick gelernt:

01.
help /? > temp.txt 
02.
find "Befehl" tempt.txt 
03.
if %errorlevel% ==0 goto german 
04.
find "command" tempt.txt 
05.
if %errorlevel% ==0 goto eng 
06.
 
07.
:german 
08.
:eng
Früher hab ich das mit
01.
if exist "%userprofile%\Lokale Einstellungen\Anwendungsdaten\" goto german 
02.
if exist "%userprofile%\Local Settings\Application Data\" goto eng
gelöst.

Zum anderen,
ich hab ein Kixscript, das jeden kleineren Acrobat Key löscht, wenn Version 8 gefunden wird.

01.
:Acrobat8 
02.
	if existkey( "HKEY_CURRENT_USER\Software\Adobe\Acrobat Reader\8.0\" ) ="0" 
03.
		?"Acrobat8  wurde gefunden " 
04.
		Deltree ( "HKEY_CURRENT_USER\Software\Adobe\Acrobat Reader\5.0" ) 
05.
		Deltree ( "HKEY_CURRENT_USER\Software\Adobe\Acrobat Reader\5.1" ) 
06.
		Deltree ( "HKEY_CURRENT_USER\Software\Adobe\Acrobat Reader\7.0" ) 
07.
 
08.
         	else 
09.
		? "Adobe Acrobat 8 nicht gefunden" 
10.
		 
11.
	endif
Und wegen der SID - von Sysinternals gibts das schöne Tools psgetsid.exe
gruß
Bitte warten ..
Mitglied: bastla
30.06.2008 um 12:09 Uhr
Hallo Przigoda und willkommen im Forum!

Als Alternative für das Auslesen der SID könntest Du folgenden Batch einsetzen:
01.
@echo off & setlocal 
02.
set G=%temp%\GetSID.vbs 
03.
echo Set net=CreateObject("WScript.Network"):WScript.Echo GetObject("winmgmts:\\.\root\cimv2").Get("Win32_UserAccount.Name='"^&net.UserName^&"',Domain='"^&net.UserDomain^&"'").SID>%G% 
04.
for /f %%i in ('cscript //nologo %G%') do set "SID=%%i" 
05.
echo %SID%
Da hier eine WMI-Abfrage (über ein integriertes VBScript) erfolgt, sollte die BS-Sprache eigentlich kein Problem sein - schneller ist aber sicherlich Deine bisher verwendete Variante.

Allerdings frage ich mich, warum Du nicht über HKCU zugreifst (was ich im Beispiel unten mache).
Zu Teil 2:
Vermutlich ist es ohnehin sicherer, anstelle von "Zeile 3" einen Suchbegriff vorzugeben (zB "Acrobat\") daher:
01.
for /f "tokens=5 delims=\" %%i in ('REG QUERY "HKEY_CURRENT_USER\Software\Adobe\Adobe Acrobat" /s^|findstr /c:"Acrobat\\"') do set "AcrobatVersion=%%i" 
02.
echo %AcrobatVersion%
Auf diese Art solltest Du (aufgrund der Sortierung innerhalb der Registry) auch die höchste Versionsnummer erhalten ...

Grüße
bastla

P.S.: @TimoBeil
Von einem unserer Batchgurus ...
Es gibt hier ohnehin nur den einen ...
Bitte warten ..
Mitglied: stollkuehn
30.06.2008 um 12:16 Uhr
Hi,

um das Problem zu lösen, die SID mit dem Usernamen zu matchen, nehme ich immer User2SID oder SID2User. Beides kleine Executables, die hervorragend in ein Batch integriert werden können.

Gruß

Osik
Bitte warten ..
Mitglied: Przigoda
30.06.2008 um 20:48 Uhr
Besten Dank für die schnellen Antworten!!! Hatte heute leider keine Zeit mehr das nochmal zu optimieren, werde mich gleich noch oder eher morgen daran setzen und das mal umsetzen!!!und dann noch kurz Rückmeldung geben


---edit---
so ich habe all eure gute Vorschläge jetzt mal zusammengefügt und eine 15 zeilige Lösung erhalten, vorher waren noch über 30, und das ganze geht auch wesentlich schneller und scheinbar auch unter engl. Systemen!
Ich bedanke mich nochmal für eure schnelle Antworten und guten Ideen, die Umsetzung bei mir musste leider etwas warten...

01.
@REM Erstelle SID als Variable 
02.
@%~d0%\tools\user2sid.exe %username% > sid.txt 
03.
@FOR /f "delims=: tokens=1,*" %%i in ('findstr /n $ %TEMP%\sid.txt') do @If %%i EQU 2 @Set SID=%%j 
04.
 
05.
@REM Finde Adobe Acrobat Version heraus 
06.
@for /f "tokens=5 delims=\" %%i in ('REG QUERY "HKEY_CURRENT_USER\Software\Adobe\Adobe Acrobat" /s^|findstr /c:"Acrobat\\"') do set "AcrobatVersion=%%i"  
07.
 
08.
@reg add "HKEY_USERS\%SID%\Software\Adobe\Adobe Acrobat\%AcrobatVersion%\... 
09.
@del "%TEMP%\sid.txt"
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch Registry auslesen - anpassen
gelöst Frage von pi0h.kkBatch & Shell5 Kommentare

Hallo Zusammen, ich versuche seit einiger Zeit eine ausgelesen Reg-Datei anzupassen, sodass sie als *.ini von einer Applikation genutzt ...

Windows Systemdateien
Registry-Schlüssel per Batch auslesen und in Datei schreiben
gelöst Frage von PhilzipWindows Systemdateien9 Kommentare

Hallo zusammen, ich habe mir vorhin einen Befehl gebastelt, der die Installierte Version von NET Framework auslesen und in ...

Batch & Shell
Variable per Batch auslesen und in Registry schreiben
gelöst Frage von ZendaraBatch & Shell3 Kommentare

Hallo, ich versuche gerade einen Batch zuerstellen der mir gewisse Werte ausliest und als Variable in die Registry schreibt. ...

Windows 10
Gänderte Registry einträge auslesen
gelöst Frage von winterj86Windows 103 Kommentare

Hallo, im Zuge eines Troulbeshootings wurden vor einigen Tagen auf einem Client, Registry Werte verändert bzw. hinzugefügt. Leider hat ...

Neue Wissensbeiträge
Internet

EU-DSGVO: WHOIS soll weniger Informationen liefern

Information von sabines vor 10 StundenInternet4 Kommentare

Wegen der europäische Datenschutzgrundverordnung stehen die Prozesse um die Registrierung von Domains auf dem Prüfstand. Sollte die Forderungen umgesetzt ...

Verschlüsselung & Zertifikate

19 Jahre alter Angriff auf TLS funktioniert immer noch

Information von BassFishFox vor 17 StundenVerschlüsselung & Zertifikate1 Kommentar

Interessant zu lesen. Der Bleichenbacher-Angriff gilt unter Kryptographen als Klassiker, trotzdem funktioniert er oft noch. Wie wir herausgefunden haben, ...

Windows 10

Windows 10 Fall Creators Update - Neue Funktion Hyper-V Standardswitch kann ggf. Fehler bei Proxy Configs verursachen

Erfahrungsbericht von rzlbrnft vor 1 TagWindows 104 Kommentare

Hallo Kollegen, Da wir die Gefahr lieben, haben wir bei einigen Usern nun mittlerweile das Creators Update drauf. Einige ...

Sicherheit

TLS-Zertifikat und privater Schlüssel von Microsofts Dynamics 365 geleakt

Information von Penny.Cilin vor 1 TagSicherheit

Microsoft hat versehentlich das TLS-Zertifikat inklusive dem privaten Schlüssel seiner Business-Anwendung Dynamics 365 geleakt. TLS-Zertifikat und privater Schlüssel von ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
Von rj11 auf rj45
Frage von jensgebkenLAN, WAN, Wireless19 Kommentare

Hallo Gemeinschaft, könnt ihr mir vielleicht bei der anfertigung eines Kabels helfen - habe ein rj 11 stecker und ...

Netzwerkmanagement
Firefox Profieles im Roaming
gelöst Frage von Hendrik2586Netzwerkmanagement17 Kommentare

Hallo liebe Leute. :) Ich hab da ein kleines Problem, welches anscheinend nicht unbekannt ist. Wir nutzen hier in ...

Netzwerkmanagement
NAS über zwei weitere Ethernet Anschlüsse verbinden
gelöst Frage von Sibelius001Netzwerkmanagement17 Kommentare

Sorry - ich bin hier wahrscheinlich als kompetter IT Trottel unterwegs. Aber eventuell kann mir jemand ganz einfach helfen: ...

LAN, WAN, Wireless
Häufig Probleme beim Anmelden in WLAN
Frage von mabue88LAN, WAN, Wireless15 Kommentare

Hallo zusammen, in einem Netzwerk gibt es relativ häufig (1-2 mal pro Woche) Probleme mit der WLAN-Verbindung. Zunächst mal ...