qigongwei
驱动牛犊
驱动牛犊
  • 注册日期2002-05-06
  • 最后登录2013-03-08
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
阅读:7909回复:33

请各位指点一下,教教我如何做WDM类型的驱动安装包。

楼主#
更多 发布于:2003-10-16 17:44
各位大侠,可以教教我如何安装WDM的驱动吗?小弟这方面是个菜鸟,一点都不懂,临时被调来做这个冬冬,都快逼得我上吊啦!呵呵,这里先谢啦。

具体是这样的;
我有下列资源:
scap.inf
scap.sys

在InstallShield环境下,我要如何才可以将这个scap.sys安装上去?并且在设备管理器里可以看到这个设备?


分要是不够我可以再补啊,各位大侠救救小弟吧

最新喜欢:

dregsdregs ltgbjltgbj
zytzjx
驱动牛犊
驱动牛犊
  • 注册日期2001-12-24
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望41点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2003-10-20 16:08
这个你要写一个程序,以后用Installshield来运行这个程序就可以了。程序在网上可以找到的。是一本讲驱动的书中就有的。你也可以看MDSN
Wecan
qigongwei
驱动牛犊
驱动牛犊
  • 注册日期2002-05-06
  • 最后登录2013-03-08
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-10-21 10:28
首先非常感谢你的回答。

不知为何,看得人有,回答的人这么少?难道问题很菜,菜到不值得那些大虾来回答吗?我把论坛块翻遍啦,发现碰到我这个问题的人很多,类似的帖子不少于20个,但确没有一个给出了一个明确的答案。含含糊糊,和骗分没什么两样。看来还是毛委员说的对,自己自力更生啦,我上了InstallShield的论坛,也翻了个底朝天,呵呵,看来老外碰到这种事情的人也比较多,呵呵,偶在里面搜到一大把关于询问如何制作驱动发行包的帖子。我都顺手copy下来,虽然到现在我还没有能够完完全全实现这个功能,但我想这个问题并不少见,我在这把我看到的和我正在实现的都写出来,希望别怪写得烂,我才刚被逼来做这行,一个星期前我还不知道InstallShield为何物,全当我灌水吧。希望刚来的别也向我这样,没头苍蝇似的。同时也希望那些大虾多关心关系我们这些菜鸟,指导和纠正这里面的错误,我是做嵌入式应用的。

首先说一下我的资源何我的目标:
我有两个文件,scap.sys和scap.inf,我的环境是InstallShield Developer 8 ,我希望最终可以制作出一个安装包,执行后可以自己实现驱动的安装。安装的平台为Windows 2000 或windows XP

下面是我找到的资料列出来:
1)这是InstallShield的官方网站上的一遍文档:

HOWTO: Launching an .inf File Via InstallScript  文档ID: Q102851

如何通过安装脚本来实现.inf的安装

为可以实现安装.inf文件,可以在安装脚本中通过调用LaunchAppAndWait函数启动一个命令行方式实现:

Windows 9x
Rundll.exe setupx.dll,InstallHinfSection DefaultInstall 132 %1

Windows NT/2000
Rundll32.exe setupapi.dll,InstallHinfSection DefaultInstall 132 %1

where %1 is the .inf filename.

下面给出例子:
Windows 9x

szProgram = \"rundll.exe\";
szCmdLine = \"setupx.dll,InstallHinfSection DefaultInstall 132 \" + SUPPORTDIR + \"test.inf\";
LaunchAppAndWait(szProgram, szCmdLine, WAIT);


Windows NT / 2000

szProgram = \"rundll32.exe\";
szCmdLine = \"setupapi.dll,InstallHinfSection DefaultInstall 132? + SUPPORTDIR + \"test.inf\";
LaunchAppAndWait(szProgram, szCmdLine, WAIT);

文档内容我只保留需要的,如果需要详细的资料请根据文档ID到InstallShield上阅读。

2)还是一个例子,是InstallShield里一个老外问的
Q:How can i call an INF file during installation through installshield.
I need to do this inorder to install some PDF printers.

A:
Windows 9x
szProgram = \"rundll.exe\";
szCmdLine = \"setupx.dll,InstallHinfSection DefaultInstall 132 \" + SUPPORTDIR + \"test.inf\";
LaunchAppAndWait(szProgram, szCmdLine, WAIT);

Windows NT / 2000
szProgram = \"rundll32.exe\";
szCmdLine = \"setupapi.dll,InstallHinfSection DefaultInstall 132 \" + SUPPORTDIR + \"test.inf\";
LaunchAppAndWait(szProgram, szCmdLine, WAIT);

SUPPORTDIR is were your inf will be located.


3)网上的大虾都说在安装程序之外写一个执行安装功能的小程序,可以在DDK\\src\\setup……找得到,我去看了,同时我也在MSDN上找到了一个文章,就是介绍这个小程序的的
http://support.microsoft.com/default.aspx?scid=http://support.microsoft..com:80/support/kb/articles/q311/2/72.asp&NoWebContent=1
有兴趣自己去看看,我就不罗嗦啦,我把这个程序Devcon下载了下来。


现在我手上有的资料可以使我有两种安装方式,一个是通过InstallShield在安装过程中通过脚本来调用Devcon来实现安装;还有一个是通过在脚本中调用rundll32来实现安装。

顺遍提一下,关于INF文件安装需要调用的函数说明,具体说明请参看Microsoft的MSDN
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/setupapi/setup/installing_from_an_inf_file.asp


我选择了第一种方式,有现成的程序为何不用:

用之前先做个试验,咱要先保证这个冬冬是确实可行的,进入命令行,敲入:
Devcon install scap.inf scap

耶,没动静?devcon failed?



待续…………





[编辑 -  10/21/03 by  qigongwei]
shuiyuntian888
驱动牛犊
驱动牛犊
  • 注册日期2003-10-14
  • 最后登录2004-05-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-10-21 11:58
前一周我也和你一样的处境,苦无帮助,后来没办法,自己想了个办法,效果还不错:把DDk里的install编译生成应用程序,然后在InstallSheild里调用它就可以了,成功后多送点分我哦!
hbaby
驱动牛犊
驱动牛犊
  • 注册日期2003-05-25
  • 最后登录2005-01-10
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-10-21 14:56
不知朋友问题解决否?我以前也遇到相同境遇。
当时使用Visual C++自己编制了一个硬件设备安装的DLL,再用InstallShield工程调用该DLL自行完成安装任务。问题是必须学
习安装Setupxxx和SetupDixxx函数,目前任务是基本应付了,但
Win98下的设备安装还是借用Windows系统安装。
该问题如何解决???请教请教,不胜感激!!! :)
qigongwei
驱动牛犊
驱动牛犊
  • 注册日期2002-05-06
  • 最后登录2013-03-08
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-10-23 23:28
to shuiyuntian888:
  
问题已经解决了,不过是使用其中的一种方法现对付任务。我希望的是把上面列的两种方法都实现出来。

很明显你没有仔细看我的灌水,呵呵。我已经提到啦,在“3)”中,我甚至告诉了你在MSDN里的文档号,以及地址。这个文档里的devcon就是你说的那个源代码的编译的结果,看过这个文档你甚至可以不用编译那个xrc啦
ruozhen
驱动牛犊
驱动牛犊
  • 注册日期2002-11-27
  • 最后登录2005-08-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-10-29 16:22
好难搞定阿

按照你说的两种方法,死活也装不上
sgenius
驱动牛犊
驱动牛犊
  • 注册日期2003-11-01
  • 最后登录2003-11-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-11-01 10:43
thank for qiqongwei
i get the devcon.exe and i feel i can solve auto update my
driver question before

but the devcon.exe only work in win2000 and winxp
if os is win98 or winme
how to handle the auto update driver question

write a program by UpdateDriverForPlugAndPlayDevices()?
98 is use ddk for 98?
me is use ddk for me?

or have other method?

thanks
wookin
驱动牛犊
驱动牛犊
  • 注册日期2002-08-05
  • 最后登录2004-07-28
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-11-01 11:39
写得不错,我也刚开始搞DDK,很详细,我也在做安装的,等我做完了,我再来这里和大家分享。QQ:19099830
fordy
驱动牛犊
驱动牛犊
  • 注册日期2003-09-13
  • 最后登录2008-08-27
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望5点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-11-05 08:42
楼主能详细的写下自己的心得跟大家分享就很难得,建议斑竹在类似的情况下应该给作者点专家分。
山风
hp_song
驱动牛犊
驱动牛犊
  • 注册日期2003-10-15
  • 最后登录2007-09-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2003-11-05 09:02
我这试了,也搞不定啊,谁还有高招
Sundsea
驱动老牛
驱动老牛
  • 注册日期2003-05-06
  • 最后登录2012-06-05
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望35点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2003-11-05 16:02
大家讨论了如此久最终还时没能说出各一二三来。
sgenius
驱动牛犊
驱动牛犊
  • 注册日期2003-11-01
  • 最后登录2003-11-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2003-11-05 22:02
我已
Sundsea
驱动老牛
驱动老牛
  • 注册日期2003-05-06
  • 最后登录2012-06-05
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望35点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2003-11-06 12:53
使用DDK下的src\\general\\setup\\install下的程序,无法完成安装,它需要一个hardware id ,这个id怎么获得,随便指定好象不可以呀,请高手指点。
sgenius
驱动牛犊
驱动牛犊
  • 注册日期2003-11-01
  • 最后登录2003-11-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2003-11-06 14:25
去抓devcon or
Sundsea
驱动老牛
驱动老牛
  • 注册日期2003-05-06
  • 最后登录2012-06-05
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望35点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2003-11-07 14:41
谢了,问题已经解决,还有一个问题请教,如何编程实现Windows系统策略的更改,还请各位大虾多多指教。
Sundsea
驱动老牛
驱动老牛
  • 注册日期2003-05-06
  • 最后登录2012-06-05
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望35点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2003-11-10 08:59
本人正在制作PCI卡驱动程序安装程序,使用DDK下的install工具,总是报错,是hardwareid的问题,错误代码是0xe0000203,请教高手指点,谢谢了先.
sgenius
驱动牛犊
驱动牛犊
  • 注册日期2003-11-01
  • 最后登录2003-11-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
17楼#
发布于:2003-11-10 21:11
zytzjx
驱动牛犊
驱动牛犊
  • 注册日期2001-12-24
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望41点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
  • 社区居民
18楼#
发布于:2003-11-11 16:41
这些方法都不行呀
Wecan
Sundsea
驱动老牛
驱动老牛
  • 注册日期2003-05-06
  • 最后登录2012-06-05
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望35点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
19楼#
发布于:2003-11-12 10:47
问题依旧呀,先前我安装一个端口驱动,费了好大的劲,才终于试出来安装所需要的<hwid>,是root\\portio,现在安装PCI卡驱动,根据MSDN的PCI卡的<hwid>命名规则,起一个名字,结果还是不行,哪位大虾能给小弟指点指点.
上一页
游客

返回顶部