驱动安装实现(二)

 前一段时间一直在使用,Installsheild 2009制作安装包。很可惜没有成功!本以为IS2009是一个完全可视化的安装工具,结果发现网上的例子包括了很多机器码,自己感觉很麻烦就放弃了。应该说IS2009更加想一个MFC集成的编程环境。

后来改用INNO来制作安装包,感觉INNO的框架比较简单明了。开源的软件。安装包非常的小。(1.4MB.

INNO分为【setup】、【Types】、【Components】、【Tasks】、【Dirs】、【Files】、【Icons】、【INI】、【installDelete】、【Languages】、【CustomMessages】、【LangOptions】、【Registry】、【Run】、【UninstallDelete】、【UninstallRun】。

并且INNO有可视化的软件:IsTool.

利用IsTool软件可以很方便的将注册表信息添加。即可生成相应的代码。【小技巧】

[Setup]
AppName=CAMERA 300B
AppVerName=CAMERA 300B Version 1.3
DefaultDirName={pf}/sunny
DisableDirPage=yes
DisableReadyPage=yes
DisableFinishedPage=yes
DefaultGroupName=sunny
UninstallDisplayIcon=CAMERA 300B.exe
OutputDir=CAMERA 300B
[files]

;把安装所需要的文件放在INNO目录下或者指明全路径。
source:"CAMERA 300B.inf";DestDir:"C:/WINDOWS/inf"
source:"CAMERA 300B.sys";DestDir:"C:/WINDOWS/system32/drivers"

;标记为自动注册
source:"CAMERA 300B.ax";DestDir:"C:/WINDOWS/system32";Flags:regserver
[Registry]

;Root写根目录。分别为HKCRHKCUHKLMHKU.

;ValueName指的是注册表里的文件夹,ValueKey指的是注册表的key.

;利用IsTool软件可以很方便的将注册表信息添加。即可生成相应的代码。【小技巧】
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: string; ValueName: DevLoader; ValueData: *ntkern
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: string; ValueName: NTMPDriver; ValueData: CAMERA 300B.sys
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: string; ValueName: CLSID; ValueData: {{978779A5-59C7-4d2c-B4D8-9904BF96365A}
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: string; ValueName: FriendlyName; ValueData: CAMERA 300B USB2.0 Camera
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: string; ValueName: InfPath; ValueData: oem21.inf
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: string; ValueName: InfSection; ValueData: CAMERA 300B.Dev
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: string; ValueName: InfSectionExt; ValueData: .NT
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: string; ValueName: ProviderName; ValueData: ShenZhen CLD Co.Ltd
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: binary; ValueName: DriverDateData; ValueData: 00 80 7c 11 65 59 c8 01
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: string; ValueName: DriverDate; ValueData: 1-18-2008
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: string; ValueName: DriverVersion; ValueData: 3.0.0.0
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: string; ValueName: MatchingDeviceId; ValueData: usb/vid_0547&pid_4d33
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: string; ValueName: DriverDesc; ValueData: CAMERA 300B USB2.0 Camera
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: string; ValueName: Vendor; ValueData: ShenZhen CLD Co.Ltd
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: string; ValueName: DeviceID; ValueData: {{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: dword; ValueName: Capabilities; ValueData: $00000000
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: dword; ValueName: DeviceType; ValueData: $00000000
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: dword; ValueName: DeviceSubType; ValueData: $00000000
Root: HKLM; SubKey: SYSTEM/ControlSet001/Control/Class/{{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}/0011; ValueType: dword; ValueName: IsPnP; ValueData: $00000001

=====================================

注册表的语句较多。可以使用IsTool工具将注册表导入,自动生成文件。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值