Надеюсь, кому-то поможет, мозги жареные! В W2K3 я могу использовать prnmngr.vbs и получать от сервера печати абсолютно все, что мне нужно, чтобы перечислить установленные очереди, имена портов, сведения о драйверах, IP-адреса и т. Д.
Но на Server 2000 сценарий не работает, и я не могу найти способ получить список установленных TCP-портов и связанных IP-адресов.
Любые идеи?
Вы можете использовать следующий сценарий. Сохраните его в "printerlist.vbs" и вызовите, используя cscript.exe printerlist.vbs
(так что вы получите вывод в консоли командной строки.)
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colInstalledPrinters = objWMIService.ExecQuery _
("SELECT * FROM Win32_Printer")
Set WshNetwork = WScript.CreateObject("WScript.Network")
WScript.Echo("This Computer's Name = " & WshNetwork.ComputerName)
For Each objPrinter in colInstalledPrinters
If (objPrinter.Attributes AND 4) = 4 then
WScript.Echo("*****> Default printer -- Start")
Else
WScript.Echo("---")
End If
WScript.Echo("Name: " & objPrinter.Name)
WScript.Echo("Share name: " & objPrinter.ShareName)
WScript.Echo("Driver name: " & objPrinter.DriverName)
WScript.Echo("Caption: " & objPrinter.Caption)
WScript.Echo("Port: " & objPrinter.PortName)
WScript.Echo("Location: " & objPrinter.Location)
WScript.Echo("Description: " & objPrinter.Description)
WScript.Echo("Server: " & objPrinter.ServerName)
WScript.Echo("System name: " & objPrinter.SystemName)
WScript.Echo("Print processor: " & objPrinter.PrintProcessor)
If (objPrinter.Attributes AND 4) = 4 then
WScript.Echo("*****> Default printer -- End")
Else
WScript.Echo("---")
End If
Next
Я наконец его взломал. Провайдер был недоступен для запроса портов на сервере W2K, но после всего этого решение было простым. Я просто экспортировал ключи реестра для портов в текущей конфигурации и почистил их в Excel. Вуаля! Используя отчет, сгенерированный из очередей печати, созданных на сервере, я объединил данные и теперь могу составить полную инвентаризацию устройств с очередями на моем сервере печати W2K.
Результат.
Вот ссылка на PowerShell для принтеров который может оказаться полезным для использования в будущем.