archim
驱动牛犊
驱动牛犊
  • 注册日期2001-08-18
  • 最后登录2006-03-17
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
阅读:1756回复:7

怎样编程来让Windows知道系统中插入了新的硬件??

楼主#
更多 发布于:2002-03-11 11:21
??
archim
LIUTANG
驱动大牛
驱动大牛
  • 注册日期2001-03-30
  • 最后登录2020-12-27
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望58点
  • 贡献值0点
  • 好评度12点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2002-03-11 12:55
有一标准消息,WM_DEVICECHANGED,当有新设备插入时就触发。
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-03-12 13:34
这是windows通知你的,不是让你通知windows的。就算你能post给一个窗口,怎么伪造那些硬件信息?
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
archim
驱动牛犊
驱动牛犊
  • 注册日期2001-08-18
  • 最后登录2006-03-17
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-03-12 16:34
原因是这样的,我写的程序中用到了UpdateDriverForPlugAndPlayDevice函数,只有当Windows检测到有新的硬件插入,但是还没有给这个设备安装驱动程序,在设备管理器里可以看到设备旁边出现一个问号的时候这个函数才能调用成功。如果这时候把设备从系统中删除,并且不重新刷新设备管理器,那么UpdateDriverForPlugAndPlayDevice就不会成功。

现在我就想知道在第二种情况下,怎样让Windows来重新检测并发现新硬件??
archim
yxy3115
驱动牛犊
驱动牛犊
  • 注册日期2002-03-12
  • 最后登录2004-03-24
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-03-13 11:18
??
ysy
ysy
驱动中牛
驱动中牛
  • 注册日期2002-02-18
  • 最后登录2008-08-25
  • 粉丝0
  • 关注0
  • 积分201分
  • 威望29点
  • 贡献值0点
  • 好评度19点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-03-13 13:28
这问题我也碰到过,虽然我知道是个问题但可以蒙混过关!我想有没有通知windows让它重新枚举总线呢?如果可以的话,也告诉我一声。
wangmqi
驱动牛犊
驱动牛犊
  • 注册日期2002-03-10
  • 最后登录2008-12-24
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2002-03-13 18:26
你在那个irq中调用的这个函数?
另外我怀疑你的unload写的不完整!
peng-416
驱动小牛
驱动小牛
  • 注册日期2001-03-23
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望2点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-03-14 14:36
写一个假的总路线驱动程序,在那里测试你硬件存在的条件.如果满足则调一个IoInvalid记不起来了,它会通知OS重新枚举总路线(也含你的这个总路线驱动程序).那时你跟OS说你有新设备,它的信息是...
OK.这是非PNP设备,来伪装成PNP的方法,你可别去骗人.
游客

返回顶部