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

Mitglied: Przigoda

Przigoda (Level 1) - Jetzt verbinden

30.06.2008, aktualisiert 20:48 Uhr, 6669 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
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 21 StundenWindows 104 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 1 TagAdministrator.de Feedback18 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 1 TagHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 2 TagenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Windows Netzwerk
WSUS4 und Windows 10 Updates automatisch installieren
Frage von sammy65Windows Netzwerk15 Kommentare

Hallo miteinander, ich habe mit einen neuen WSUS Server aufgesetzt Server 2016 darauf einen aktuellen WSUS. Grund, wir stellen ...

Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...

Windows Netzwerk
Backup über WAN
Frage von petereWindows Netzwerk11 Kommentare

Hallo, ich muss aus einem entfernten WAN (synchrone 1Gbit) Daten sichern. Dabei handelt es sich sowohl um wenige große ...

Hyper-V
Hyper-V mit altem XEON-Server. Was ist falsch?
Frage von LollipopHyper-V11 Kommentare

Hallo Bin etwas frustriert. Kleinbetrieb, ca. 15 PC's, 2 Stk. Server mit einigen virtuellen PC's für Fernwartung, VaultServer für ...