gpt4 book ai didi

c - 设备 xxx_init 没有被调用

转载 作者:行者123 更新时间:2023-11-30 17:12:23 25 4
gpt4 key购买 nike

我编写了一个简单的流驱动程序来学习设备驱动程序,因为我只有 DLLEntry、Init 和 DeInit 函数,而且我还导出了 .def 文件中的所有函数。

我还在 HKLM/Drivers/Sample 中添加了驱动程序的注册表设置。

我编写了一个应用程序来测试其工作,其中我使用以下路径调用了ActivateDeviceEx。

我的 DLLEntry 函数正在被调用,但 Init 函数没有被调用。我正在使用 RETAILMSG 宏来打印调试信息。

我也看过这个帖子1他也面临同样的问题

但我不明白我们必须做什么才能让它发挥作用......

最佳答案

调用 DllEntry 但 Init 的事实并不暗示函数导出存在问题。流驱动程序must export at least the following :

  • 初始化
  • 去初始化
  • 打开
  • 关闭
  • 阅读
  • 寻找
  • IO控制

此外,除非注册表中的 Flags 值包含 DEVFLAGS_NAKEDENTRIES,否则每个函数都必须以设备名称为前缀,因此,如果驱动程序支持 XYZ 设备,则函数必须命名为 XYZ_Init、XYZ_Deinit 等。

关于c - 设备 xxx_init 没有被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31579170/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com