如何在VB中创建Printer对象

时间:2016-11-16 13:11:40

标签: vb6 printers network-printers

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

我有打印机名称。

我能在网上找到的所有代码都涉及循环浏览所有可用的打印机并找到与我们的打印机名称匹配的内容。

有没有办法直接从打印机名称创建打印机对象prn。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:2)

你做不到。 VB6打印机集合只能通过索引访问,而不能通过名称访问。请参阅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

上述内容无法处理您要查找的打印机不在集合中的情况。您需要添加逻辑来涵盖这种情况 - 您要做的是针对您的特定任务和要求。此示例也是区分大小写的名称搜索,因此请记住这一点。