InstallShield脚本中如何启动某一程序
2010-11-11 11:55
423 查看
借着一个朋友要在安装包中启动Outlook的需求,写了一段代码,供有需要者参考。
这里先判断目标机是否安装了Office 2003 Outlook,之后启动。
具体代码如下:
function OnBegin()
STRING svInstalledPath, szKeyRoot;
NUMBER nvSize, nType;
begin
RegDBSetDefaultRoot ( HKEY_LOCAL_MACHINE );
szKeyRoot = "SOFTWARE\\Microsoft\\Office\\11.0\\Outlook\\InstallRoot";
nType = REGDB_STRING;
if (RegDBKeyExist (szKeyRoot) < 0) then
MessageBox ("RegDBKeyExist failed.", SEVERE);
else
if ( RegDBGetKeyValueEx (szKeyRoot, "Path", nType, svInstalledPath, nvSize) < 0 ) then
MessageBox ("RegDBGetKeyValueEx failed.", SEVERE);
else
LaunchAppAndWait(svInstalledPath + "Outlook.exe", "", NOWAIT);
endif;
endif;
end;
一点分享,在用RegDBGetKeyValueEx读取数据时,在给入的第三个参数中,我直接给了REGDB_STRING,结果编译报错(error C8046),只好先定义了一个NUMBER类型的变量nType,然后将nType给入才通过了编译。
更多Installshield技术交流问题,可查看Appinstall中文论坛(www.appinstall.cn)
这里先判断目标机是否安装了Office 2003 Outlook,之后启动。
具体代码如下:
function OnBegin()
STRING svInstalledPath, szKeyRoot;
NUMBER nvSize, nType;
begin
RegDBSetDefaultRoot ( HKEY_LOCAL_MACHINE );
szKeyRoot = "SOFTWARE\\Microsoft\\Office\\11.0\\Outlook\\InstallRoot";
nType = REGDB_STRING;
if (RegDBKeyExist (szKeyRoot) < 0) then
MessageBox ("RegDBKeyExist failed.", SEVERE);
else
if ( RegDBGetKeyValueEx (szKeyRoot, "Path", nType, svInstalledPath, nvSize) < 0 ) then
MessageBox ("RegDBGetKeyValueEx failed.", SEVERE);
else
LaunchAppAndWait(svInstalledPath + "Outlook.exe", "", NOWAIT);
endif;
endif;
end;
一点分享,在用RegDBGetKeyValueEx读取数据时,在给入的第三个参数中,我直接给了REGDB_STRING,结果编译报错(error C8046),只好先定义了一个NUMBER类型的变量nType,然后将nType给入才通过了编译。
更多Installshield技术交流问题,可查看Appinstall中文论坛(www.appinstall.cn)
相关文章推荐
- HOWTO:InstallShield脚本中如何启动某一程序
- ubuntu下如何自动启动U盘脚本程序(autorun)
- 如何顺利实现LINUX系统开机自动启动指定的脚本程序
- Windows 7系统如何设置某一动作(如发送邮件)默认启动的程序
- Linux下如何在shell脚本里启动另一个程序
- 如何在指定的终端会话中启动程序
- Linux系统,在图形界面下,设置开机启动客户端程序(脚本)。
- 如何在NCL(The NCAR Command Language )启动时自动加载自定义的函数和程序
- C / C++ 如何让程序只启动一个实例
- Linux如何实现开机启动程序详解
- 如何在命令行删除在会话设置的启动程序
- Linux下如何指定某一类型程序用特定程序打开(通过binfmt_misc)
- Linux内核如何装载和启动一个可执行程序
- 如何代码设置以管理员身份启动程序
- 不错的linux下通用的java程序启动脚本
- Android adb.exe程序启动不起来,如何处理
- Android adb.exe程序启动不起来,如何处理
- shell脚本如何监控程序占用带宽? 推荐
- Linux如何实现开机启动程序详解
- 长程序启动脚本,关闭脚本,清理日志~