Jump to content

Auslesen der Registry mit Unterschlüssel


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Hallo zusammen,

ich habe ein Problem beim auslesen der Registry. Ich will einen Registrypfad mit Unterschlüssel auslesen die wiederum Unterschlüssel enthalten können. Leider bringt das Script immer einen Fehler wenn die Unterschlüssel, ermittelt im ersten Lauf, keine Unterschlüssel aufweisen.

Script:

const HKEY_LOCAL_MACHINE = &H80000002

strComputer = "."

Set objReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\"&_

strComputer & "\root\default:StdRegProv")

strKeyPath = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Providers\DE-FRAPRT904"

objReg.EnumKey HKEY_LOCAL_MACHINE, strKeyPath, arrSubKeys

WScript.Echo "Subkeys under " _

& "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Providers\DE-TEST"

For Each subkey In arrSubKeys

WScript.Echo subkey

on error resume next

Next

 

Fehler ist das, wenn es keine Unterschlüssel gibt, die aber nicht vorhanden sein müssen.

Geschrieben

Hallo,

 

also wenn es evtl. auch ein AutoIT Code Link: AutoIt v3 - Automate and Script Windows Tasks - For Free!

sein kann, dann wäre dieser etwa wie folgt:

 

Script:

 

For $i= 1 to 999

$var = RegEnumKey("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Providers\DE-FRAPRT904", $i)

If @error <> 0 then ExitLoop

MsgBox(4096, "SubKey #" & $i & " under HKLM\Software\Microsoft\Windows NT\CurrentVersion\Print\Providers\DE-FRAPRT904: ", $var)

Next

 

Gruß

 

motzel

Geschrieben

Hallo,

 

habe in einem anderen Forum folgenden Script gefunden

On Error Resume Next

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set colItems = objWMIService.ExecQuery("Select * from Win32_Printer", , 48)

For Each objItem In colItems

If objItem.Shared = True Then

Text = Text & "Caption: " & objItem.Caption & vbCrLf

Text = Text & "Shared: " & objItem.Shared & vbCrLf

Text = Text & "***********************************" & vbCrLf

End If

Next

MsgBox Text

 

Das zeigt genau meine Daten die ich benötige und kann diese auch weiterverarbeiten.

 

Trotzdem DANKE

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...