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
Kommentar vom Moderator Biber am 13.07.2010 um 20:53:46 Uhr
Verschoben von "Windows glaub ich" nach "Batch & Shell".
GELÖST

Registry wert in System Variable hinzufügen

Frage Entwicklung Batch & Shell

Mitglied: Tom2011

Tom2011 (Level 1) - Jetzt verbinden

13.07.2010, aktualisiert 20:53 Uhr, 7194 Aufrufe, 10 Kommentare

Hi Leute

Ich möchte in Windows XP einen Registry wert Auslesen und in eine System Variable schreiben. Hat jemand einen Tipp wie das gehen könnte?

Vielen Dank
Mitglied: Biber
13.07.2010 um 16:54 Uhr
Moin Tom2011,

Ich möchte in Windows XP einen Registry wert Auslesen und in eine System Variable schreiben.
Einen bestimmten? Oder egal welchen - geht es mehr um die Technik?

Bei einigen Hex-Werten oder bei REG_EXPAND_SZ wird es sonst ein bisschen holzig...

Und verzeih mir meine laienhafte Frage: WTF ist eine System Variable?
Und soll mit dieser System Variable irgendetwas passieren oder lassen wir die erstmal im System rumhängen?

Grüße
Biber
Bitte warten ..
Mitglied: Tom2011
13.07.2010 um 17:00 Uhr
Hi Biber

Ich möchte den Wert dieses Keys auslesen: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\DefaultUserName] und anschliessend den Wert in eine Windows SystemVariable %NameVariable% einfügen. Mir geht es um die Technik wie ich das machen kann per Kommando Zeile oder so.

Mir der Variablen werden dann später andere Befehle per Kommando Zeile ausgeführt.

Gruss
Bitte warten ..
Mitglied: Biber
13.07.2010 um 19:31 Uhr
Moin Tom2011,

bei WinXP ist (glaube ich) standardmäßig das nützliche Utility Reg.exe dabei - und "Reg Query" wird zum Auslesen von Werten oder Zweigen verwendet.

Spiel es einmal am CMD-Prompt nach
## nackte Demo 
>reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultUserName 
 
! REG.EXE VERSION 3.0 
 
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon 
    DefaultUserName     REG_SZ  Biber 
 
 
## nur die relevante Zeile ausgeben 
>reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultUserName|find /i "DefaultUserName" 
    DefaultUserName     REG_SZ  Biber 
<code> 
 
Ein bisschen lesbarer und vorbereitend für einen Batch 
<code type="plain"> 
## Vorspiel 
>set regkey="HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" 
 
>set "regval=DefaultUserName" 
## Proof-of-concept 
>reg query %regkey% /v %regval%|find /i "%regval%" 
    DefaultUserName     REG_SZ  Biber 
 
## jetzt mit FOR/F nur das dritte Token der Zeile abgreifen - proof-of-concept mit "ECHO set" statt "set" 
>for /f "tokens=3" %i in ('reg query %regkey% /v %regval%^|find /i "%regval%"') do @echo set "myvar=%i" 
set "myvar=Biber" 
 
##final am CMD-Prompt:mit "set" statt "echo set" 
>for /f "tokens=3" %i in ('reg query %regkey% /v %regval%^|find /i "%regval%"') do @set "myvar=%i" 
##test 
> >set myvar 
myvar=Biber
--> in einem Batch die Laufvariable der FOR-Anweisung als %%i statt %i schreiben.

Varianten dieser Mimik findest du im Bereich "Batch und Shell", u.a. auch Tutorials zum Auslesen/Setzen von Registry-Werten.

Grüße
Biber
Bitte warten ..
Mitglied: 60730
13.07.2010 um 19:44 Uhr
Moin,
Zitat von Tom2011:
Hi Biber

Ich möchte den Wert dieses Keys auslesen: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\Winlogon\DefaultUserName] und anschliessend den Wert in eine Windows SystemVariable %NameVariable%
einfügen. Mir geht es um die Technik wie ich das machen kann per Kommando Zeile oder so.

Mir der Variablen werden dann später andere Befehle per Kommando Zeile ausgeführt.

Also in dem speziellen Beispiel, macht er Umweg nur unter Umständen Sinn.
  • Gib mal Set in einer Dosbox ein - oder andersherum,

deine Variable, die du auslesen willst - gibts schon - nennt sich %username%

Gruss
retour
Bitte warten ..
Mitglied: Tom2011
13.07.2010 um 20:27 Uhr
HI Biber!

Vielen Dank- Ja genau das ist was ich suche! Soweit ist alles klar aber beim Proof of concept bekomme ich folgenden Fehler:

C:\>reg query %regkey% /v %regval%|find /i "%regval%"
ERROR: The system was unable to find the specified registry key or value.

Die Variablen %regkey% und %regval% sind aber gesetzt:

regkey="HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
regval=DefaultUserName


Eine Idee was nicht stimmt?
Bitte warten ..
Mitglied: 60730
13.07.2010 um 20:33 Uhr
Zitat von Tom2011:
Eine Idee was nicht stimmt?
Wenn du vergleichst, was der sparsame Biber im Gegensatz zu deinem POC gesetzt hat - fällts dir auch auf.
01.
C:\>reg query "%regkey%" /v %regval%|find /i "%regval%"
Bitte warten ..
Mitglied: Biber
13.07.2010 um 20:37 Uhr
Moin Tom2011,

>Eine Idee was nicht stimmt?
Steht doch da.... die Variable %regkey% habe ich vollständif in Anführungszeichen gesetzt wegen des Leerzeichens in 'Windows NT'.
"Vollständig" unter Batchprofis meint "Ein Anführungszeichen vorn, eins am Ende".

Bei dir fehlt das schliessende Anführungszeichen.

Grüße
Biber
Bitte warten ..
Mitglied: Tom2011
13.07.2010 um 20:39 Uhr
Hi

Ich kenne die Variable %username% aber wenn der User nicht angemeldet kann ich die nicht auslesen. Dann muss den weg oben gehen. Um den zuletzt angemeldeten User zu Identifizieren.

Gruss
Bitte warten ..
Mitglied: Biber
13.07.2010 um 20:44 Uhr
Moin Tom2011,

das kann aber ein Unterschied sein - der "DefaultUsername" und der "LastLogonUsername".
Falls es wichtig ist...

Grüße
Biber
Bitte warten ..
Mitglied: Tom2011
13.07.2010 um 20:47 Uhr
Hi all

Ich habe es gefunden es sind die "" die fehlten

Vielen Dank an alle!! Problem gelöst!

Schönen Abend noch!!
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Batch & Shell
Wert in Registry suchen und in Variable speichern (2)

Frage von J.Troll zum Thema Batch & Shell ...

Batch & Shell
gelöst Variable über Wert aussuchen (2)

Frage von CreatorX zum Thema Batch & Shell ...

Windows 8
gelöst Username als Variable in Registry benutzen (4)

Frage von pablovic zum Thema Windows 8 ...

Batch & Shell
gelöst Variable enthält nur den letzten Wert (4)

Frage von Phill93 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (24)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

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

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Erkennung und -Abwehr
Spam mit eigener Domain (12)

Frage von NoobOne zum Thema Erkennung und -Abwehr ...