Hi,
ich möchte mit einer Anwendung die Registry aller PCs im Netzwerk auslesen und die installierten Programme auslesen und die Values der Registry in eine DB speichern.
Nun habe ich das Problem, dass ich remote die registry nicht auslesen kann, ich bekomme zwar alle Keys, also die einzelnen Programme, aber ich komme nicht an die einzelnen Values dahinter.
Über ein VBScript funktioniert es, aber wenn ich es in meine Anwendung einbinden möchte kann ich nur auf meine eigene Registry zugreifen, aber nicht auf die eines entfernten Rechners.
Bin auch relativ neu in VB, daher mache ich möglicherweise irgendwas falsch, aber vielleicht kann mir ja jemand helfen.
So sieht mein Code zum auslesen der Registry aus:
Das Problem ist an dieser Stelle schon, dass ich bei meinen eigenen Rechner bei temp2 die DisplayNamen angezeigt bekomme, aber wenn ich auf einen Rechner im Netzwerk zugreife bekomme ich immer "Nothing" zurück.
Ich hoffe mir kann jemand helfen, danke sonst schon mal für die Mühe
Grüße Kantoz
ich möchte mit einer Anwendung die Registry aller PCs im Netzwerk auslesen und die installierten Programme auslesen und die Values der Registry in eine DB speichern.
Nun habe ich das Problem, dass ich remote die registry nicht auslesen kann, ich bekomme zwar alle Keys, also die einzelnen Programme, aber ich komme nicht an die einzelnen Values dahinter.
Über ein VBScript funktioniert es, aber wenn ich es in meine Anwendung einbinden möchte kann ich nur auf meine eigene Registry zugreifen, aber nicht auf die eines entfernten Rechners.
Bin auch relativ neu in VB, daher mache ich möglicherweise irgendwas falsch, aber vielleicht kann mir ja jemand helfen.
So sieht mein Code zum auslesen der Registry aus:
Code:
Dim objReg As Object Dim HKLM As String = &H80000002 'HKEY_LOCAL_MACHINE Dim strKey As String = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\" Dim tempString, temp, arrSubkeys, subkey,arrSubTypes,temp2 objReg = GetObject("winmgmts://" & "cs7E0521" & "/root/default:StdRegProv") objReg.EnumKey(&H80000002, strKey, arrSubkeys) For Each subkey In arrSubkeys Dim tempString As String = strKey & subkey i = objReg.EnumValues(&H80000002, tempString, temp, arrSubTypes) objReg.GetStringValue(HKLM, tempString, "DisplayName", temp2) If temp2 <> "" Then temp2 = temp2 End If Next
Ich hoffe mir kann jemand helfen, danke sonst schon mal für die Mühe
Grüße Kantoz
Comment