您的位置:首页 > 其它

installshield通过修改注册表实现windows环境变量且即时生效的方法

2015-02-10 20:29 555 查看
版本:2010

工程:installscript MSI



情景描述:

1.在很多时候我们安装一个软件时都需要修改类似JAVA_HOME,PATH等环境变量。

2.修改完环境变量之后必须重启windows系统环境变量才有效。

3.但重启windows系统是十分不友好的安装方式。

解决方法:

如下的源代码:

//修改JAVAHOME为例

szRegBuffer = "SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Environment";

RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);

if(RegDBSetKeyValueEx(szRegBuffer, "JAVA_HOME", REGDB_STRING_EXPAND, TARGETDIR ^ "jdk1.7.0_71", -1)<0) then

MessageBox ("Javahome未安装成功!", SEVERE);

endif;

//以上修改完了注册表,下面的函数是通知windows注册表已经修改了。

szRegBuffer = "Environment";

SendMessage (0xffff, 0x001A, 0, &szRegBuffer);

转载请注明出处!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: