reissaus73
Goto Top

DWORD (Name immer verschieden) eines RegKeys auslesen und in Variable schreiben

Momentan schreibe ich den REG Key den ich auslese in eine Datei.

Das Ergebnis sieht so ähnlich aus

test.txt
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\NetCache\AssignedOfflineFolders
    \\SDESZI.ad.com\SDESZI-OF\UserData\ReisMi    REG_DWORD    0x2
    \\SDESZI.ad.com\SDESZI-OF\FlexConfig    REG_DWORD    0x2
    \\SDESZI.ad.com\SDESZI-OF\UserProfile\ReisMi    REG_DWORD    0x2

ich möchte allerdings jetzt nur den Wert aus der Zeile welche das Suchwort "UserProfile" enthält
und davon benötige ich den String in einer Variablen aber nur diesen Teil \\SDESZI.ad.com\SDESZI-OF\UserProfile

Mein Ansatz war bisher folgender

test.cmd
@echo off & setlocal
for /f "delims=" %%i in ('findstr "UserProfile" test.txt') do set zeile=%%i  


eigentlich würde ich das ganze auch schon so ähnlich aus der Registry auslesen um nicht den Umweg über
eine Datei zu gehen. Wer kann mir diesbezüglich helfen.

Ich benötige folgenden String \\SDESZI.ad.com\SDESZI-OF\UserProfile in einer Variablen
dieser DWORD Wert befindet sich oben genannten HKCU und ist überall ein anderer.
Der oben genannte Ansatz hat zur Folge das ich noch Leerzeichen am Anfang des Strings habe
und der Rest ab UserProfile abgeschnitten werden muss.

Content-Key: 305813

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

Printed on: April 24, 2024 at 20:04 o'clock

Member: rubberman
Solution rubberman May 31, 2016 at 20:54:13 (UTC)
Goto Top
Hallo reissaus73.

Ungetestet etwa so:
@echo off &setlocal

for /f %%i in (
  'reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\NetCache\AssignedOfflineFolders"^|findstr /ic:"\\userprofile\\"'  
) do for %%j in ("%%~dpi.") do set "userp=%%~fj"  

echo %userp%
pause
Ich gehe davon aus, dass der Serverpfad bis zum UserProfile keine Leerzeichen enthält.

Grüße
rubberman
Member: reissaus73
reissaus73 Jun 01, 2016 at 09:38:58 (UTC)
Goto Top
Ich danke dir, funktioniert ohne Änderung genau so