【问题标题】:Detect if parallel port exists检测并口是否存在
【发布时间】:2012-12-17 17:49:15
【问题描述】:

我有一个 C# 程序,它使用多种方法操作 2 根线,其中一种是使用并行端口接口。

用户选择他们想使用的方法,我想根据机器上可用的内容过滤选项。

我一直使用inpout32.dll 进行并行端口通信,但如果计算机没有并行端口,它不会出错,所以我需要另一种方式来告诉。

我已经看到很多示例,这些示例查找可用的打印机以查找端口,但没有连接打印机,因此此解决方案不起作用。

【问题讨论】:

  • 虽然可能有一些方法可以检测系统上是否存在这样的设备(如设备管理器中所见),但会有很多系统存在该设备(电路和 IO 端口存在),但是没有实际的物理端口焊接到主板上(或者可能有引脚或其他一些内部连接器,您可以将串行端口连接到扩展槽支架上)。我看不出您如何能够检测到物理 DB-25 连接器的存在,而不是未连接的引线,这意味着在一般情况下可能无法检测到。
  • @AllonGuralnek 我从来没有见过没有实际端口的具有并行端口控制器硬件的系统,因此确定它是否在设备管理器中对我来说就足够了(这是内部软件)。我已经看到了您所描述的内容,但仅适用于 USB 端口和音频设备,或者在 SOC 而不是 PC 上。
  • 我的台式计算机带有一个并行端口,您必须将其插入主板并连接到可用的扩展槽支架(我没有理由这样做)。我见过许多计算机和笔记本电脑,它们的芯片组支持并行端口(并出现在设备管理器中),但找不到物理端口(因为它基本上已经消失了)。我认为这可能比你想象的更普遍。

标签: c# parallel-port


【解决方案1】:

您可以通过 WMI 接口枚举设备

这是一篇文章:

http://www.codeproject.com/Articles/18268/How-To-Almost-Everything-In-WMI-via-C-Part-3-Hardw

还有一个名为“Win32_ParallelPort:并行端口”的类

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-02
    相关资源
    最近更新 更多