如何在 VB 中创建打印机对象

How to create a Printer object in VB

我在创建打印机对象时遇到 VB 6 中的问题。 基本上,我需要创建一个打印机对象,以便我可以设置需要执行打印的正确托盘。

我有打印机名称。

我能在网上找到的所有代码都涉及遍历所有可用的打印机并找到与我们的打印机名称匹配的代码。

有什么方法可以直接从打印机名称创建打印机对象 prn。

如有任何帮助,我们将不胜感激。

你不能。 VB6 Printers 集合只能通过索引访问,不能通过名称访问。参见 Visual Studio 6 Printer Object, Printers Collection

因此您必须在集合中搜索您想要的打印机。例如:

Private Function FindPrinter(PrinterName As String) As Printer
  Dim i As Integer
  For i = 0 To Printers.Count - 1
    If Printers(i).DeviceName = PrinterName Then
      Set FindPrinter = Printers(i)
      Exit For
    End If
  Next i
  Exit Function
End Function

以上不处理您要查找的打印机不在集合中的情况。您需要添加逻辑来涵盖该条件——您需要做的是特定于您的特定任务和要求的。此示例也是区分大小写的名称搜索,因此请记住这一点。