阅读:1756回复:7
怎样编程来让Windows知道系统中插入了新的硬件??
??
|
|
|
沙发#
发布于:2002-03-11 12:55
有一标准消息,WM_DEVICECHANGED,当有新设备插入时就触发。
|
|
板凳#
发布于:2002-03-12 13:34
这是windows通知你的,不是让你通知windows的。就算你能post给一个窗口,怎么伪造那些硬件信息?
|
|
|
地板#
发布于:2002-03-12 16:34
原因是这样的,我写的程序中用到了UpdateDriverForPlugAndPlayDevice函数,只有当Windows检测到有新的硬件插入,但是还没有给这个设备安装驱动程序,在设备管理器里可以看到设备旁边出现一个问号的时候这个函数才能调用成功。如果这时候把设备从系统中删除,并且不重新刷新设备管理器,那么UpdateDriverForPlugAndPlayDevice就不会成功。
现在我就想知道在第二种情况下,怎样让Windows来重新检测并发现新硬件?? |
|
|
地下室#
发布于:2002-03-13 11:18
??
|
|
5楼#
发布于:2002-03-13 13:28
这问题我也碰到过,虽然我知道是个问题但可以蒙混过关!我想有没有通知windows让它重新枚举总线呢?如果可以的话,也告诉我一声。
|
|
6楼#
发布于:2002-03-13 18:26
你在那个irq中调用的这个函数?
另外我怀疑你的unload写的不完整! |
|
7楼#
发布于:2002-03-14 14:36
写一个假的总路线驱动程序,在那里测试你硬件存在的条件.如果满足则调一个IoInvalid记不起来了,它会通知OS重新枚举总路线(也含你的这个总路线驱动程序).那时你跟OS说你有新设备,它的信息是...
OK.这是非PNP设备,来伪装成PNP的方法,你可别去骗人. |
|