【发布时间】:2013-03-16 20:57:23
【问题描述】:
我不完全是 C# 专家,我做了一些尴尬的事情,比如为音乐程序制作钢琴卷轴(因此生成一个 WPF 画布,全部包含数学等)和一些简单的程序来完成常见任务,比如详细说明飞行(数学运算、GUI 交互等。
我需要对如何在自己的计算机上检测 USB 打印机并使用它有一个非常概括的了解。我已经在这里和谷歌上搜索过,这就是我发现的:
以及其他类似的链接告诉我几乎一无所知的各种方法:(
好的,这就是我想出的(我会尽量简短):
A) 使用没有驱动程序的打印机(这个定义可能不准确,但我有点困惑......)
我应该:
1) 找到一种方法来检测 USB 门以及通过产品 ID 和供应商 ID 连接到它们的设备。在 Developerfusion 文章的特定案例中,作者解释了 USB 的一些基础知识,并告诉您使用人机接口设备来检测它。 (我使用的是 Windows 7,但找不到任何 HID,只有其他随机 USB 驱动器,而且我完全不知道如何与它们交互)
2)创建数据流并将它们与命令一起发送到正确的消息管道上的 USB 打印机(或您打算试运行的水设备)。
B)使用带有驱动程序或 Windows API 或预烘焙驱动程序的打印机:
我应该:
1) 使用在 [MSDN System.printing 库][Link number 6] 中找到的所有 .NET 类,并使用这些类的正确方法...
好的,说明重点:
我真的不知道正确的步骤,这就是我想问你的:
关于如何做到这一点的分步指南,特别是第一个(正如我在 MSDN 论坛问题上看到的,第二个实际上是研究代码的问题)。我不希望您为我编写代码(尽管您可以根据需要)。我只是问一个一般指导方针,哪些是实现最终结果的正确步骤。发布链接,任何可行的...
【问题讨论】:
-
I'm asking just a general guideline on which are the right steps to follow to achieve the final result.但 SO 不适合它。 -
那么把代码放好,我也很好,因为我不知道如何开始。谢谢。
-
根本不做任何“检测”。隐藏打印机之间的差异是 Windows 的工作。每台打印机在您的程序中看起来都一样。
-
@user2212907
Well put the code then,这是我们希望你做的:),否则请尝试谷歌。 -
你不想尝试接近 A。那里有疯狂。您最终会编写自己的打印机驱动程序。使用方法 B,您首先要找到所需的打印机。例如,请参阅stackoverflow.com/questions/2354435/…。
标签: c# api printing usb driver