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

Probleme bei auslesen der Registry

Frage Entwicklung Visual Studio

Mitglied: bambi2012

bambi2012 (Level 1) - Jetzt verbinden

19.06.2013 um 10:04 Uhr, 1676 Aufrufe, 8 Kommentare, 1 Danke

Hallo liebes Forum,

ich habe ein Problem bei remote auslesen der Registry.




Dim RemoteKey As RegistryKey

Try
RemoteKey = RegistryKey.OpenRemoteBaseKey(RegistryHive.CurrentUser, sComp).OpenSubKey("Software\Microsoft\Windows" & _
"NT\CurrentVersion\Devices", False)
Catch ex As Exception
erg_print.Text = ex.Message
Return
End Try


For Each valueName As String In RemoteKey.GetValueNames()
erg_print.Items.Add(valueName)
Next

RemoteKey.Close()

Mit diesem Code frage ich den Schlüssel "Devices" ab, in dem alle eingerichteten Drucker aufgeführt sind. Ausgeben werden mir jedoch nur der MS XPS Document Writer und der MS Office Document Image Writer, obwohl in dem Schlüssel noch weitere Drucker stehen ( Netzwerkdrucker .

Auch die Abfrage auf den Standartdrucker...

Dim Werte As String

Werte = RegistryKey.OpenRemoteBaseKey(RegistryHive.CurrentUser, sComp, _
RegistryView.Default).OpenSubKey("Software\Microsoft\Windows" & _
"NT\CurrentVersion\Windows\", False, _
Security.AccessControl.RegistryRights.ReadKey).GetValue("Device")

erg_drucker.Text = Werte

... gibt mir nur den MS XPS Document Writer wieder, obwohl in dem Schlüssel ein anderer Drucker aufgeführt ist ( wieder ein Netzwerkdrucker)

Frage ich einen anderen Schlüssel ab, bekomme ich auch das richtige Ergebniss...

Warum werden mir die Netzwerkdrucker nicht angezeigt???

Ich weiß einfach nicht mehr weiter.

Ich hoffe, Ihr könnt mir helfen...

Vielen Dank und liebe Grüße
Mitglied: Coreknabe
19.06.2013 um 10:15 Uhr
Moin,

ich nehme mal an, dass Du bei der Abfrage über ausreichende Rechte verfügst. Ansonsten springt mir das Wort "Netzwerkdrucker" ins Auge, die Drucker sind benutzerabhängig: Fragst Du den richtigen Schlüssel ab? Viellecht rede ich auch Quatsch, aber das fällt mir so spontan ein.

Gruß
Bitte warten ..
Mitglied: colinardo
19.06.2013, aktualisiert um 11:56 Uhr
Hallo bambi2012,
als alternative empfehle ich eine Abfrage der installierten Drucker über WMI:
01.
Sub Main() 
02.
 
03.
        Dim RemoteSystem As String = "192.168.1.10" 
04.
        Dim username As String = "USERNAME" 
05.
        Dim password As String = "PASSWORD" 
06.
 
07.
        Dim myConnOptions As New ConnectionOptions 
08.
        With myConnOptions 
09.
            .Username = username 
10.
            .Password = password 
11.
            .Impersonation = ImpersonationLevel.Impersonate 
12.
            .Authentication = AuthenticationLevel.Packet 
13.
        End With 
14.
        Dim myScope As New ManagementScope("\\" & RemoteSystem & "\root\cimv2", myConnOptions) 
15.
        myScope.Connect() 
16.
        If myScope.IsConnected Then 
17.
            Dim mos As New ManagementObjectSearcher(myScope, New ObjectQuery("Select * from Win32_Printer")) 
18.
            Dim mgtObj As ManagementObject 
19.
            For Each mgtObj In mos.Get 
20.
                Console.WriteLine(mgtObj("name").ToString & " ### LocalPrinter:" & mgtObj("local").ToString) 
21.
            Next 
22.
            Console.WriteLine(vbCrLf & "Fertig, Taste drücken zum beenden...") 
23.
            Console.ReadKey() 
24.
        Else 
25.
            Console.WriteLine("Konnte keine Verbindung zum RemoteSystem herstellen") 
26.
        End If 
27.
 
28.
    End Sub
Das ist sauberer und weniger Fehleranfällig.

Grüße Uwe
Bitte warten ..
Mitglied: bambi2012
19.06.2013 um 10:31 Uhr
@Coreknabe:

In HKCU\Software\Microsoft\WindowsNT\CurrentVersion\Devices stehen alle angebundenen Drucker (incl. Netzwerkdrucker)
Lokal klappt die Abfrage ja auch ordentlich, nur werden mir die Netzwerkdrucker nicht angezeigt...

Und in HKCU\Software\Microsoft\WindowsNT\CurrentVersion\Windows unter "Device" steht der Standarddrucker.
Ist der Standarddrucker aber ein Netzwerkdrucker, so wird der "Microsoft XPS Document Writer" angezeigt, obwohl in dem Schlüssel etwas anderes steht...

@colinardo:

Andere Werte frage ich auch über WMI ab, nur habe ich gelesen, dass über WMI keine Netzwerkdrucker remote angezeigt werden.
Wenn ich das so, wie du beschrieben hast, umsetzte, bekomme ich auch nur lokale Drucker ( Microsoft XPS Document Writer u.s.w.) angezeigt...

Trotzdem schonmal Danke für die raschen Antworten
Bitte warten ..
Mitglied: colinardo
19.06.2013, aktualisiert um 11:58 Uhr
Ist der User unter dem du das Programm ausführst auf dem Zielsystem Mitglied der Administratoren ? Du hast denke ich ein Rechteproblem wie @Coreknabe schon erwähnt hat.

Lokal klappt die Abfrage ja auch ordentlich, nur werden mir die Netzwerkdrucker nicht angezeigt...
Stimmt, hatte ich vergessen. Die sind ja Nutzerabhängig.
Bitte warten ..
Mitglied: bambi2012
19.06.2013 um 12:32 Uhr
Die sind Nutzerabhängig? Warum zeigt er mir denn das nicht einfach an, was in dem Schlüssel auch drin steht... Das muss doch irgendwie möglich sein... In dem Key für den Standarddrucker steht ja auch ein komplett anderer Drucker drin, als er mir ausgibt...

Habe meinen Benutzer auch auf dem Client als Admin eingetragen, trotzdem keine Besserung
Bitte warten ..
Mitglied: bambi2012
19.06.2013 um 12:49 Uhr
auch mit dem oberen wmi beispiel bekomme ich die netzwerkdrucker nicht angezeigt
Bitte warten ..
Mitglied: colinardo
19.06.2013, aktualisiert um 12:52 Uhr
Zitat von bambi2012:
auch mit dem oberen wmi beispiel bekomme ich die netzwerkdrucker nicht angezeigt
Das geht auch nur wenn du die Logindaten des jeweiligen Users verwendest ... und die hast du wahrscheinlich nicht.
Bitte warten ..
Mitglied: bambi2012
19.06.2013 um 13:52 Uhr
stimmt, perfekt...jetzt klappt das auch... nur du hast recht, ich hab leider nicht von allen Usern das Passwort, wenn überhaupt eins vergeben ist...
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Batch Registry auslesen - anpassen (5)

Frage von pi0h.kk zum Thema Batch & Shell ...

Batch & Shell
gelöst Variable per Batch auslesen und in Registry schreiben (3)

Frage von Zendara zum Thema Batch & Shell ...

Windows Systemdateien
Registry Hive offline einer vorhandenen Registry hinzufügen (7)

Frage von HrwSiggi zum Thema Windows Systemdateien ...

Windows Tools
gelöst Powershell Remotezugriff auf Registry (15)

Frage von kushMichi zum Thema Windows Tools ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Verschlüsselung & Zertifikate
SSL Zertifikat für HTTPS (33)

Frage von Hendrik2586 zum Thema Verschlüsselung & Zertifikate ...

Grafikkarten & Monitore
24" oder 27" mit Full HD oder doch mehr Auflösung? (21)

Frage von brutzler zum Thema Grafikkarten & Monitore ...

Router & Routing
gelöst Linksys wrt1200ac v2 mit dd-wrt: keine vlan-einstellungen im GUI (15)

Frage von Pixi123 zum Thema Router & Routing ...