Frage

Ich suche einen Weg, um alle Treiber in dem lokalen drivers der Workstation aufzuzuzählen und den „Anzeigenamen“ abrufen, dass der Name ist, dass der Benutzer zum Beispiel Dialog, um die Drucker in sieht. Insbesondere würde ich auch nur eine bestimmte Klasse von Geräten wie Drucker zur Liste mag.

Wenn möglich, VBScript oder JScript über Windows Scripting Host. Alternativ Parsen der Ausgabe eines Befehlszeilen-Dienstprogramm zu fein ist.

War es hilfreich?

Lösung

Ich bin kein Experte, aber es scheint, dass diese Aufgabe nur scripted werden kann, wenn Sie Microsoft Systems Management Server (SMS) . Es bietet die SMS_Driver WMI-Klasse, die, soweit ich es verstehe kann der Fahrer zur Abfrage im Treiberspeicher verwendet werden. Das Skript unten sollten Ihnen die Vorstellung davon, wie dies geschehen kann. (Disclaimer: Ich habe keine SMS, so dass ich kann dieses Skript korrekt nicht beweisen Vorsicht vor Fehlern.)

On Error Resume Next

strComputer = "."   ' Computer name. Dot means local computer

' Connect to the SMS Provider
Set oWMIService = GetObject("winmgmts:" & _
    "{impersonationLevel=impersonate}!\\" & strComputer & "\root\sms\site_XXX") ' Replace XXX with your site code (see notes below)
If Err.Number <> 0 Then
    WScript.Echo "WBemServices connection failed. Error " & Err.Number & ": " & Err.Description
    WScript.Quit
End If

' Get all device drivers
Set colDrivers = oWMIService.ExecQuery("SELECT * FROM SMS_Driver")

' List properties of each driver
For Each objDriver In colDrivers
    WScript.Echo _
      "Name: "        & objDriver.LocalizedDisplayName & vbNewLine & _
      "Class: "       & objDriver.DriverClass          & vbNewLine & _
      "Model name: "  & objDriver.ModelName            & vbNewLine & _
      "Description: " & objDriver.LocalizedDescription & vbNewLine & _
      "Version: "     & objDriver.DriverVersion        & vbNewLine & _
      "Provider: "    & objDriver.DriverProvider       & vbNewLine & _
      "Path: "        & objDriver.ContentSourcePath    & vbNewLine & _
      "File: "        & objDriver.DriverINFFile        & vbNewLine
Next

Weitere Informationen:

  • Sie können sich wahrscheinlich Ihre Website Code in Verwaltung finden -> Computerverwaltung -> Dienste und Anwendungen -> WMI-Steuerung -> Eigenschaften -.> Sicherheit unter dem Root \ SMS node
  • Das Skript soll alle Treiberklassen aufzulisten; wenn Sie brauchen nur bestimmte Klassen (zum Beispiel Druckertreiber), die Änderung der Abfrage
    SELECT * FROM SMS\_Driver WHERE DriverClass=_insert\_proper\_DriverClass\_here_
    der Trick sollte.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top