2011-06-06 43 views
0

我想在启动过程中初始化系统中的设备驱动程序后对其执行操作。我想从我自己的应用程序中做到这一点,它不会成为任何现有驱动程序的一部分。有没有办法检查驱动程序何时完成初始化,以便我可以做我想做的事情。请建议。在启动过程中执行驱动程序初始化后的操作

回答

3

你的问题不清楚。从哪里控制?你的问题是否更好地表达?

我想在自己的,单独的驱动程序/应用程序/等初始化后,对系统中的每个驱动程序执行操作。码。此代码不会成为任何现有驱动程序的一部分。

如果这就是你之后的那么没有,没有固有的方式来做到这一点。如果它是你自己的操作系统,你可能会克隆和修改busenum驱动程序(%WINCEROOT%\PUBLIC\COMMON\OAK\DRIVERS\BUSENUM),它负责加载驱动程序,但我不相信这是一个好主意。你到底想要解决什么问题?

EDIT

有关BUSENUM驱动程序 “选项” 进一步详细地,在BusEnum.cpp,起始于线260是方法BusEnum::ActivateAllChildDrivers。此方法负责加载驱动程序注册表中的每个驱动程序。在293行,你会看到:

pCurDevice->LoadDevice(); 

然后你会在后面插入你的代码。

+0

Thanks @ctacke。为了更清晰起见,我重新提出了这个问题。如果我想修改busenum驱动程序,我不知道我怎么知道设备驱动程序何时完成初始化。因为,正如我上面提到的,我想在初始化后立即对驱动程序执行一个操作。 – MemoryLeak 2011-06-08 03:33:31

+0

再次感谢@ctacke。这看起来像一个选项。我也在研究'RequestDeviceNotifications',并想知道这是否可以在这里帮助。 MSDN表示“此功能要求通知设备接口的出现和消失”。我想知道是否可以注册设备通知,在messageQueue句柄上waitforsingleobject以执行我的操作。不知道MSDN定义中“外观”部分究竟意味着什么。它包括加载DLL并初始化它。有什么建议么? – MemoryLeak 2011-06-08 19:37:42

相关问题