【问题标题】:Writing device driver?编写设备驱动程序?
【发布时间】:2011-04-28 14:55:28
【问题描述】:

不知道我理解的对不对……

说,如果我想控制鼠标的工作方式,即左键打开窗口,右键发送击键'A'等。

但我不是在谈论在应用程序中编写如下内容:

void MouseDown(xxxxEventArgs e, sender object)
{

}

我想完全控制设备的工作方式,那么我需要为它编写驱动程序吗?根据我之前在组装中学到的知识,控制设备我应该需要知道他们的端口才能与设备通信。但是说如果我买了罗技鼠标,是否可以自己写一个鼠标驱动来使用呢?

因为我看到一个项目,他们从商店购买了一个 USB 网络摄像头,他们可以控制网络旋转,从网络摄像头接收图像,我想知道这是不是因为网络摄像头有 API 提供给他们?

提前致谢。

【问题讨论】:

  • 有可能,但我认为这不是微不足道的。

标签: windows device-driver


【解决方案1】:

如果你想完全控制设备,那么你确实需要编写一个设备驱动程序。这是一项不平凡的任务,您应该阅读它。上面有教程here,还有一本windows驱动开发的书here

如果您想编写设备驱动程序,您应该非常精通 C 和/或 C++。

【讨论】:

    【解决方案2】:

    您不需要为您正在尝试做的事情编写设备驱动程序。设备驱动程序除了可以读取、写入、执行 IOMMU 等或其他一些寄存器的设备地址的数据表之外什么都没有东西。你需要的是某种破解你想要实现的东西的应用程序编程部分。

    因为设备驱动程序代码只是从设备读取数据并写回它是应用程序所关心的。尽管在某些情况下设备驱动程序程序员为应用程序程序员提供了一种方法(函数),以便他们可以编写他们的应用程序和调用这些方法。在您的情况下,您只需要了解应用程序代码如何与设备驱动程序对话。 如果您想编写设备驱动程序,请检查此 http://www.freesoftwaremagazine.com/articles/drivers_linux?page=0%2C0

    【讨论】:

      【解决方案3】:

      在这种情况下,您可以继续使用 C++ 和汇编编写自己的设备驱动程序 莱姆

      【讨论】:

        猜你喜欢
        • 2011-04-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-03-23
        • 1970-01-01
        • 1970-01-01
        • 2023-03-23
        • 1970-01-01
        相关资源
        最近更新 更多