当前位置 : 主页 > 编程语言 > c语言 >

vb.net – 如何获取vb .net中任何连接的打印机的型号

来源:互联网 收集:自由互联 发布时间:2021-06-24
正如问题所述,我需要使用vb dotNet找到打印机的型号. 目前已经使用EnumPrinters API并检查驱动程序名称,但是同一命名驱动程序支持某些打印机(即驱动程序支持一系列打印机),这使我无法区
正如问题所述,我需要使用vb dotNet找到打印机的型号.

目前已经使用EnumPrinters API并检查驱动程序名称,但是同一命名驱动程序支持某些打印机(即驱动程序支持一系列打印机),这使我无法区分它们.

我需要输出为< manufacturer> <模型> <码取代.

这可能与vb.net/any其他语言

不打算为你编写全部代码,但请查看DriverName属性.在调试模式下运行整个过程以查看可供您使用的其他属性.您需要添加对System.Drawing和System.Management的引用.

Imports System.Drawing.Printing
Imports System.Management


Module Module1

    Sub Main()
        Dim printers = PrinterSettings.InstalledPrinters

        For Each printerName As String In printers
            Dim query As String = String.Format("SELECT * from Win32_Printer WHERE Name LIKE '%{0}'", printerName)
            Dim searcher As ManagementObjectSearcher = New ManagementObjectSearcher(query)
            Dim collection As ManagementObjectCollection = searcher.Get()

            For Each printer As ManagementObject In collection
                For Each propData As PropertyData In printer.Properties
                    Debug.WriteLine(String.Format("{0}: {1}", propData.Name, propData.Value))
                Next
            Next
        Next
    End Sub

End Module
网友评论