jinwutong
驱动牛犊
驱动牛犊
  • 注册日期2003-11-17
  • 最后登录2004-02-11
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
20楼#
发布于:2003-12-02 11:30
现在安装MODEM什么都成功了 想卸载这个MODEM,怎么做?大虾帮忙了!
smalldou
驱动牛犊
驱动牛犊
  • 注册日期2004-05-14
  • 最后登录2005-04-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
21楼#
发布于:2004-05-21 16:55

上面的代码结合我先前贴出的CoInstaller可以在2k/xp下完整地解决安装Modem
的问题。在98下有两个问题,一个是对某些设备的驱动在运行到SetupDiCreateDeviceInfo时会弹出新硬件安装的wizard,十分讨厌。不过好像Modem没有。解决办法也不难,对于会弹出wizard的设备,可以通过直接写注册表完成创建过程(也幸好98下可以直接修改enum)。
第二是98下不支持Co-Installer,实在不知道怎么及时地设置Attach键值,以致装完后拨号网络认不出Modem,
需要重启后才认。这是我目前没办法解决的。望哪位大虾可以指点迷津。

[编辑 -  8/22/03 by  gzytom]


我试了试gzytom的程序,在win2k上没有问题。在win98上执行的时候,到SetupDiCreateDeviceInfo(hdi , szClassName, lpGUID , lpszDescription, NULL , DICD_GENERATE_ID , &hDev)
一句就会报错,错误号为:0x0000000d,看了帮助说这是“数据错误”,我的hdi是前面函数得到的句柄,szClassName是“Modem”,lpGUID 是GUID const CLASS_GUID = {0x4D36E96DL, 0xe325, 0x11ce, {0xbf, 0xc1, 0x08, 0x00, 0x2b, 0xe1, 0x03, 0x18}};
符值过来的,hDev是SP_DEVINFO_DATA结构,初始化为0的。。。。实在是看不出来哪里错了呀:(
请各位给支个招行不??
谢谢了
eaglewzhy
驱动牛犊
驱动牛犊
  • 注册日期2004-01-06
  • 最后登录2005-06-30
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
22楼#
发布于:2005-01-26 15:54
我在2000下试了gzytom的Co-Installer程序,inf中增加了以下几行,自己重新创建了一个win32动态库FlyingCard.dll,库中定义了一个回调函数ModemCoInstallProc,当主程序运行到SetupDiRegisterCoDeviceInstallers(hdi , &hDev) 时候,会提示指定动态库FlyingCard.dll的位置,当调用
SetupDiCallClassInstaller(DIF_INSTALLDEVICE , hdi , &hDev)时候,一直没调用期望出现的ModemCoInstallProc回调,所以就没有达到gzytom叙述中的给AttachTo设置值,不知道是什么原因?我是刚看这一块东东,望各位指教

[DestinationDirs]
ModemCopyFilesSection = 11

[Modem.NT.CoInstallers]  
CopyFiles = ModemCopyFilesSection
AddReg = Modem.NT.CoInstallers_AddReg

[ModemCopyFilesSection]
FlyingCard.dll
 
[Modem.NT.CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,"FlyingCard.dll, ModemCoInstallProc"


[编辑 -  1/26/05 by  eaglewzhy]
smith02
驱动牛犊
驱动牛犊
  • 注册日期2002-11-11
  • 最后登录2005-10-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
23楼#
发布于:2005-03-02 14:28


我的也是CDMA Modem啊,//hand,呵呵。0xe0000206是指不合法的
类。怎么你的机子连Modem的类都没有。自己用写注册表方法手工添加应该也行的。不过我想不会的,是不是你的DEFINE_GUID写错了?coinstall不是很复杂的东西,msdn就有,不过e文是肯定的了。EricGaoxp的代码就可以不使用coinstaller了,一直没考虑过SetupDiCreateDevRegKey这个函数,原来有这个妙用。


请问Error Code: 0xe0000206是指不合法的, 还有0xe0000203是没有选择驱动
这些ErrorCode的注解在哪里可以找到啊?我在MSDN里怎么没发现呢?多谢多谢
smith02
驱动牛犊
驱动牛犊
  • 注册日期2002-11-11
  • 最后登录2005-10-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
24楼#
发布于:2005-03-04 11:13
[quote]

我的也是CDMA Modem啊,//hand,呵呵。0xe0000206是指不合法的
类。怎么你的机子连Modem的类都没有。自己用写注册表方法手工添加应该也行的。不过我想不会的,是不是你的DEFINE_GUID写错了?coinstall不是很复杂的东西,msdn就有,不过e文是肯定的了。EricGaoxp的代码就可以不使用coinstaller了,一直没考虑过SetupDiCreateDevRegKey这个函数,原来有这个妙用。


请问Error Code: 0xe0000206是指不合法的, 还有0xe0000203是没有选择驱动
这些ErrorCode的注解在哪里可以找到啊?我在MSDN里怎么没发现呢?多谢多谢 [/quote]

各位大虾还在吗?帮帮我啊
lishu2002
驱动牛犊
驱动牛犊
  • 注册日期2005-09-02
  • 最后登录2011-08-14
  • 粉丝2
  • 关注0
  • 积分32分
  • 威望165点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
25楼#
发布于:2008-10-13 15:45
不知道搂主能不能看到,你那个RegQueryDeviceProperty里面调用的什么函数呢,MSDN中没有RegQueryDeviceProperty呢
lijianjun714
驱动小牛
驱动小牛
  • 注册日期2006-08-24
  • 最后登录2009-09-24
  • 粉丝0
  • 关注0
  • 积分23分
  • 威望349点
  • 贡献值0点
  • 好评度162点
  • 原创分0分
  • 专家分0分
26楼#
发布于:2008-11-24 18:04
可否提供INF文件看看, 谢谢!
上一页 下一页
游客

返回顶部