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

前端之家收集整理的这篇文章主要介绍了vb.net – 如何获取vb .net中任何连接的打印机的型号前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_403_1@
正如问题所述,我需要使用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

猜你在找的VB相关文章