Windows 2000 wdm:没有显示驱动程序调用我的微型端口驱动程序的 HwVidStartIo
Windows 2000 wdm: no display driver calls the HwVidStartIo of my miniport driver
我正在为 Windows NT 4.0 - 5.1 编写图形微型端口驱动程序。我被困在这种情况下,我的微型端口驱动程序的 HwVidStartIo 永远不会被调用。
我希望显示驱动程序通过向 videoprt.sys 发送请求来触发函数调用,然后 videoprt.sys 调用我的 HwVidStartIo。但是不知何故,没有显示驱动程序关心我的微型端口驱动程序。
我是否需要以某种方式向显示驱动程序公布或注册我的微型端口驱动程序?
系统启动时的流程是这样的:
- DriverEntry 被调用
- HwVidFindAdapter 被调用
- HwVidFindAdapter returns NO_ERROR/0x00
- HwVidFindAdapter 被调用
- HwVidFindAdapter returns ERROR_INVALID_PARAMETER/0x57
- HwVidFindAdapter 被调用
- HwVidFindAdapter returns ERROR_INVALID_PARAMETER/0x57
- HwVidFindAdapter 被调用
- HwVidFindAdapter returns NO_ERROR/0x00
- DriverEntry returns 0x00(VideoPortInitialize 的return 值)
- HwVidInitialize 被调用
- HwVidInitialize returns true/0x01
- HwVidInitialize 被调用
- HwVidInitialize returns true/0x01
好的,我明白了。
我的 .inf 文件声明:
StartType = 3 ; 3 == SERVICE_DEMAND_START
这可能适合即插即用驱动程序。但是我的不兼容即插即用。所以我不得不把它改成
StartType = 1 ; 1 == SERVICE_SYSTEM_START
我终于可以继续前进了。
我正在为 Windows NT 4.0 - 5.1 编写图形微型端口驱动程序。我被困在这种情况下,我的微型端口驱动程序的 HwVidStartIo 永远不会被调用。
我希望显示驱动程序通过向 videoprt.sys 发送请求来触发函数调用,然后 videoprt.sys 调用我的 HwVidStartIo。但是不知何故,没有显示驱动程序关心我的微型端口驱动程序。
我是否需要以某种方式向显示驱动程序公布或注册我的微型端口驱动程序?
系统启动时的流程是这样的:
- DriverEntry 被调用
- HwVidFindAdapter 被调用
- HwVidFindAdapter returns NO_ERROR/0x00
- HwVidFindAdapter 被调用
- HwVidFindAdapter returns ERROR_INVALID_PARAMETER/0x57
- HwVidFindAdapter 被调用
- HwVidFindAdapter returns ERROR_INVALID_PARAMETER/0x57
- HwVidFindAdapter 被调用
- HwVidFindAdapter returns NO_ERROR/0x00
- DriverEntry returns 0x00(VideoPortInitialize 的return 值)
- HwVidInitialize 被调用
- HwVidInitialize returns true/0x01
- HwVidInitialize 被调用
- HwVidInitialize returns true/0x01
好的,我明白了。
我的 .inf 文件声明:
StartType = 3 ; 3 == SERVICE_DEMAND_START
这可能适合即插即用驱动程序。但是我的不兼容即插即用。所以我不得不把它改成
StartType = 1 ; 1 == SERVICE_SYSTEM_START
我终于可以继续前进了。