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

VBScript I Finden eines Registry Unterschlüssels mit bestimmten Key und Stringwert

Frage Entwicklung

Mitglied: Auron2k

Auron2k (Level 1) - Jetzt verbinden

18.03.2010 um 10:34 Uhr, 5571 Aufrufe, 1 Kommentar

Guten Tag,

ich habe folgendes Problem:

Aus dem Registrierungsschlüssel HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall will ich bestimmte Unterschlüssl herausfiltern. Und zwar alle Unterschlüssel die einen Wert Publisher enthalten und dieser gleich einem Stringwert ist, zB "Microsoft".
Ein Script zum "Auslesen" habe ich, aber ich kriege es nicht hin nur den Bestimmten Schlüssel auszugeben.

01.
'---------------------------------------------------------------- 
02.
'Extract all registry data for the specified key and its subkeys. 
03.
'---------------------------------------------------------------- 
04.
Const sKeyPath = "Software\Microsoft\Windows\CurrentVersion\Uninstall" 
05.
Const HKCR=&H80000000, HKCU=&H80000001, HKLM=&H80000002, HKUS=&H80000003 
06.
Const REG_SZ = 1 
07.
Const REG_EXPAND_SZ = 2 
08.
Const REG_BINARY = 3 
09.
Const REG_DWORD = 4 
10.
Const REG_MULTI_SZ = 7 
11.
 
12.
Set oReg = GetObject("winmgmts:\\.\root\default:StdRegProv") 
13.
 
14.
oReg.EnumKey HKLM, sKeyPath, aEntryNames 
15.
If Not IsNull(aEntryNames) Then 
16.
	For i = 0 To UBound(aEntryNames) 
17.
	GetValues sKeyPath & "\" & aEntryNames(i) 
18.
	Next 
19.
End If 
20.
WScript.Quit 
21.
 
22.
'----------------------------------- 
23.
'Process the current key recursively 
24.
'----------------------------------- 
25.
Sub GetValues (sPath) 
26.
Dim aNames, i 
27.
 
28.
oReg.EnumValues HKLM, sPath, aD_Names, aValueTypes   'Get the data 
29.
If Not IsNull(aD_Names) Then 
30.
	For i = o To UBound(aD_Names) 
31.
	DisplayData sPath, aD_Names(i), aValueTypes(i) 
32.
	Next 
33.
End If 
34.
 
35.
oReg.EnumKey HKLM, sPath, aK_Names      'Get the subkeys 
36.
If Not IsNull(aK_Names) Then 
37.
	For i = 0 To UBound(aK_Names) 
38.
	GetValues sPath & "\" & aK_Names(i)   ' 
39.
	Next 
40.
End If 
41.
End Sub 
42.
 
43.
 
44.
'---------------------------------------- 
45.
'Display the data for the specified value 
46.
'---------------------------------------- 
47.
Sub DisplayData(sPath, sName, iType) 
48.
WScript.Echo "Name: " & sName 
49.
	Select Case iType 
50.
		Case REG_SZ 
51.
		oReg.GetStringValue HKLM, sPath, sName,sValue 
52.
		WScript.Echo "String=" & sValue 
53.
		Case REG_EXPAND_SZ 
54.
		oReg.GetExpandedStringValue HKLM, sPath, sName, esValue 
55.
		WScript.Echo "Expanded String=" & esValue 
56.
		Case REG_BINARY 
57.
		oReg.GetBinaryValue HKLM, sPath, sName,aValues 
58.
		Line = "" 
59.
			For Each byteValue In aValues 
60.
			Line = Line & byteValue 
61.
			Next 
62.
		WScript.Echo "Binary=" & Line 
63.
		Case REG_DWORD 
64.
		oReg.GetDWORDValue HKLM, sPath, sName,dwValue 
65.
		WScript.Echo "DWORD=" & dwValue 
66.
		Case REG_MULTI_SZ 
67.
		oReg.GetMultiStringValue HKLM, sPath, sName, aValues 
68.
		Line = "" 
69.
			For Each sValue In aValues 
70.
			Line = Line & sValue & vbLf 
71.
			Next 
72.
		WScript.Echo "Multi String=" & Line 
73.
	End Select 
74.
End Sub

Kann mir da jemand weiterhelfen?
Mitglied: Auron2k
18.03.2010 um 17:01 Uhr
Habe das Problem gelöst, falls es jemanden Interessiert, hier das Script:

01.
Const HKEY_LOCAL_MACHINE = &H80000002 
02.
 
03.
Set oReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv")  
04.
 
05.
Dim arrSubKeys() 
06.
  
07.
strKeyPath = "Software\Microsoft\Windows\CurrentVersion\Uninstall" 
08.
oReg.EnumKey HKEY_LOCAL_MACHINE, strKeyPath, arrSubKeys 
09.
 
10.
On Error Resume Next 
11.
 
12.
	For Each subkey In arrSubKeys 
13.
	    
14.
	    strSubKey = "Software\Microsoft\Windows\CurrentVersion\Uninstall\" & subkey 
15.
		 
16.
		Set oShell = WScript.CreateObject("WScript.Shell") 
17.
	 
18.
		test = oShell.RegRead("HKLM\" & strSubKey & "\wertnachdemgesuchtwird") 
19.
		 
20.
		If (test = "valuedeswertes) = TRUE Then 
21.
			subkey1 = subkey 
22.
			Else 
23.
			End If 
24.
	Next 
25.
	 
26.
//Deine Aktionen// 
27.
 
28.
Loop
Bitte warten ..
Ähnliche Inhalte
VB for Applications
Registry-Unterschlüssel durchsuchen
gelöst Frage von goodbytesVB for Applications9 Kommentare

Hallo, irgendwie stehe ich auf der Leitung :-( Wie kann ich mittels vbs einen Wert jedes nächsten Unterschlüssels auslesen ...

Batch & Shell
VBScript, Excel - Find in Range
gelöst Frage von internet2107Batch & Shell20 Kommentare

Hallo zusammen. Ein nettes Mitglied hat mir mit einem langen Code geholfen, dafür noch mal großen Dank. Jedoch benötige ...

Batch & Shell
PowerShell Registry Schlüssel finden und löschen
gelöst Frage von pixel0815Batch & Shell10 Kommentare

Hallo zusammen, ich benötige Hilfe bei einem PS Skript. Eigentlich möchte ich das ich unter diesem Pfad HKLM:\SYSTEM\CurrentControlSet\Enum\IDE ein ...

Batch & Shell
Environment Variable in GPO Registry Key Name
Frage von ukulele-7Batch & Shell9 Kommentare

Ich habe hier ein Program was für meinen OS und die genutzte Datenbank "nicht frei gegeben" ist. Es erscheinen ...

Neue Wissensbeiträge
Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 1 TagWindows 102 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Sicherheits-Tools

Achtung: Sicherheitslücke im FortiClient VPN-Client

Tipp von kgborn vor 1 TagSicherheits-Tools

Ich weiß nicht, wie häufig die NextGeneration Endpoint Protection-Lösung von Fortinet in deutschen Unternehmen eingesetzt wird. An dieser Stelle ...

Internet

USA: Die FCC schaff die Netzneutralität ab

Information von Frank vor 1 TagInternet3 Kommentare

Jetzt beschädigt US-Präsident Donald Trump auch noch das Internet. Der neu eingesetzte FCC-Chef Ajit Pai ist bekannter Gegner einer ...

DSL, VDSL

ALL-BM200VDSL2V - Neues VDSL-Modem mit Vectoring von Allnet

Information von Lochkartenstanzer vor 1 TagDSL, VDSL2 Kommentare

Moin, Falls jemand eine Alternative zu dem draytek sucht: Gruß lks

Heiß diskutierte Inhalte
Windows Server
GPO nur für bestimmte Computer
Frage von Leo-leWindows Server13 Kommentare

Hallo Forum, gern würde ich ein Robocopy script per Bat an eine GPO hängen. Wichtig wäre aber dort der ...

Windows Server
KMS Facts for Client configuration
Frage von winlinWindows Server13 Kommentare

Hey Leute, wir haben in unserem Netz nun einen neuen KMS Server. Haben Bestands-VMs die noch nicht aktiviert sind. ...

Router & Routing
OpenWRT bzw. L.E.D.E auf Buffalo WZR-HP-AG300H - update
gelöst Frage von EpigeneseRouter & Routing11 Kommentare

Guten Tag, ich habe auf einem Buffalo WZR-HP-AG300H die alternative Firmware vom L.E.D.E Projekt geflasht. Ich bin es von ...

Windows Tools
Software-Tool zum Entfernen von bösartigem Windows
Frage von emeriksWindows Tools11 Kommentare

Hi, siehe Betreff hat das jemals irgendjemand schonmal sinnvoll eingesetzt? (MRT) E.