安装工程
近几天做一个安装的工程,总结一下和大家分享.
在WM5以上支持MICROSD卡的手机上当用户装上了MICROSD,安装时可以有选择安装至本地或者是安装至STORGE CARD.我用的VS2005的安装工程来生成的CAB,但是由于设置问题,无论用户怎么选择最终的安装目录也都会是默认的路径(我默认的路径 是/PROGRAM FILES/****)而不会被安装到存储卡的相应路径下.
分析一下REALEASE下的安装工程INI文件,发现安装工程INI文件中[DestinationDirs]字段中的目标目录(Files.Common1=0,"%CE1%/XXXXX")
,使用的目标目录名不是动态的宏,具体的安装配置文件中各个字段用法与宏的概念请参见下面第一个链接.而如果使用宏"%INSTALLDIR%"代 替,"%CE1%/%XXXXX %"即可将程序动态的安装到各个盘符下的对应的目标路径.另外这部分还有很多设置,如在安装时文件覆盖方式(Skip,overwirte等)的等很多细 节.在升级时会用到这些设置
二,SETUPDLL的更改,
SETUP_API codeINSTALL_EXIT Install_Exit(
HWND hwndParent,
LPCTSTR pszInstallDir,
WORD cFailedDirs,
WORD cFailedFiles,
WORD cFailedRegKeys,
WORD cFailedRegVals,
WORD cFailedShortcuts
)
由于我的项目需要在安装结束后动态的把程序LAUNCH起来,所以需要,在SETUPDLL(安装的脚本)当中的Install_Exit的参数 LPCTSTR pszInstallDir, 代表文件安装的目录,注意这个字符串的值与宏"%INSTALLDIR%"相同,所以根据该参数即可知程序的安装目录, 并可以在安装结束时启动程序.
如果大家想对安装过程有深入的了解,请参见以下的网页.
http://msdn.microsoft.com/en-us/library/aa924371.aspx
http://www.devdiv.net/viewthread.php?tid=1594&extra=page%3D1
在WM5以上支持MICROSD卡的手机上当用户装上了MICROSD,安装时可以有选择安装至本地或者是安装至STORGE CARD.我用的VS2005的安装工程来生成的CAB,但是由于设置问题,无论用户怎么选择最终的安装目录也都会是默认的路径(我默认的路径 是/PROGRAM FILES/****)而不会被安装到存储卡的相应路径下.
分析一下REALEASE下的安装工程INI文件,发现安装工程INI文件中[DestinationDirs]字段中的目标目录(Files.Common1=0,"%CE1%/XXXXX")
,使用的目标目录名不是动态的宏,具体的安装配置文件中各个字段用法与宏的概念请参见下面第一个链接.而如果使用宏"%INSTALLDIR%"代 替,"%CE1%/%XXXXX %"即可将程序动态的安装到各个盘符下的对应的目标路径.另外这部分还有很多设置,如在安装时文件覆盖方式(Skip,overwirte等)的等很多细 节.在升级时会用到这些设置
二,SETUPDLL的更改,
SETUP_API codeINSTALL_EXIT Install_Exit(
HWND hwndParent,
LPCTSTR pszInstallDir,
WORD cFailedDirs,
WORD cFailedFiles,
WORD cFailedRegKeys,
WORD cFailedRegVals,
WORD cFailedShortcuts
)
由于我的项目需要在安装结束后动态的把程序LAUNCH起来,所以需要,在SETUPDLL(安装的脚本)当中的Install_Exit的参数 LPCTSTR pszInstallDir, 代表文件安装的目录,注意这个字符串的值与宏"%INSTALLDIR%"相同,所以根据该参数即可知程序的安装目录, 并可以在安装结束时启动程序.
如果大家想对安装过程有深入的了解,请参见以下的网页.
http://msdn.microsoft.com/en-us/library/aa924371.aspx
http://www.devdiv.net/viewthread.php?tid=1594&extra=page%3D1