大家都知道wince的Windows目录是无法断电保存文件的。
安装WINCE驱动程序时,相关的注册表中包含了DLL的文件名,如果我们不将DLL放在Windows目录下,那么这个文件名必须是文件的全路径,而使用CAB安装包是,用户选择的路径是不固定的,怎么才能把这个驱动DLL的路径自动的设置为安装路径呢。谢谢
列如:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\DrvDemo]
"Index"=dword:1
"Prefix"="DRV"
"Dll"="DrvDemo.dll"
"Order"=dword:0
如果我现在的安装路径为"\\NandFlash",那么注册表应该如下设置
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\DrvDemo]
"Index"=dword:1
"Prefix"="DRV"
"Dll"="\\NandFlash\\DrvDemo.dll"
"Order"=dword:0
我见过一些驱动安装软件,不用你选择安装目录,自动找到CE的安装目录,后来自己也找了个软件生成器,都是要自己选择目录的,楼主可以研究研究
应该编写setup.dll就可以了吧,而且在打包cab的时候可以指定文件的路径
那要看你用什么工具了,我是用CAB Manager
制作cab的时候可以配置dll的绝对安装路径,至少wince cab manager和vs2005这两个工具都可以
LS正解。LZ可以试试wince cab manager。
我就是用的wince cab manager
找到解决办法了,感谢各位
解决办法是直接在注册表中写入如下:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\DrvDemo]
"Index"=dword:1
"Prefix"="DRV"
"Dll"="%InstallDir%\DrvDemo.dll"
"Order"=dword:0
就可以了,比如你安装到Program路径,那么最终注册表值如下:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\DrvDemo]
"Index"=dword:1
"Prefix"="DRV"
"Dll"="\Program\DrvDemo.dll"
"Order"=dword:0