查看完整版本: [-- 虎哥 inno如何写环境变量不用重启成功代码 --]

汉化新世纪论坛 -> 安装与补丁 -> 虎哥 inno如何写环境变量不用重启成功代码 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

syl1130 2016-03-10 22:30

虎哥 inno如何写环境变量不用重启成功代码

虎哥,
inno如何写环境变量-系统变量 新建一个变量名和变量值,不用重启就可以实现成功的代码? P.S.安装包在安装新建的时候,如果电脑系统变量的变量名和变量值已经存在,安装包如何安装完成自动替换已经存在的变量名和变量值也同样不用重启电脑成功呢

说的有点啰嗦,请虎哥见谅,我只能写新建之后还需要重启电脑才行 很不好

spser 2016-03-11 17:19
不是可以写入注册表??

syl1130 2016-03-12 13:23
spser:不是可以写入注册表??  (2016-03-11 17:19) 

写注册表 不用重启电脑吗

gnatix 2016-03-12 18:08
如果你的安装程序修改环境变量,那么为了使修改立即生效,你需要下面的设置
[Setup]
ChangesEnvironment=yes

syl1130 2016-03-13 11:10
gnatix:如果你的安装程序修改环境变量,那么为了使修改立即生效,你需要下面的设置[Setup]ChangesEnvironment=yes (2016-03-12 18:08) 

如果已经存在变量值和变量名 怎么替换呢 虎哥

gnatix 2016-03-14 00:06
设置或者修改环境变量就是修改注册表
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

比如
[Registry]
Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"; ValueType: string; ValueName: "Path"; ValueData: "{reg:HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment,Path};{app}"
Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"; ValueType: string; ValueName: "MyName"; ValueData: "{app}"

syl1130 2016-03-14 10:57
gnatix:设置或者修改环境变量就是修改注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment比如[Registry]....... (2016-03-14 00:06) 

谢谢虎哥 解决了

syl1130 2016-03-15 22:01
gnatix:设置或者修改环境变量就是修改注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment比如[Registry]....... (2016-03-14 00:06) 

虎哥,变量值如果是程序的安装路径,可以获取程序安装路径吗 我要做的程序只有卸载路径 可以写入到变量值吗 安装路径是用户自行安装的位置,可能是C盘或其他盘位置

gnatix 2016-03-17 03:27
获取程序安装路径是可以的,但是没有固定的方法,有很多可能,需要看具体情况。你要说得具体一点才能帮助你。

syl1130 2016-03-17 09:39

例如软件安装的路径默认

gnatix 2016-03-18 03:14
应该就是下面的样子吧。
由于你没有提供注册表中卸载路径的所有的信息,所以下面的 XXXXXX 要你根据实际情况替换。
[Registry]
Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"; ValueType: string; ValueName: "HDRLS_HOME_V4"; ValueData: "{code:ExtractFileDir|{reg:HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\XXXXXX,UninstallString}}"

syl1130 2016-03-18 11:30
gnatix:应该就是下面的样子吧。由于你没有提供注册表中卸载路径的所有的信息,所以下面的 XXXXXX 要你根据实际情况替换。[Registry]Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" .. (2016-03-18 03:14) 

好的 谢谢虎哥 帮助我好多了 我在研究下剩下的部分 再次感谢虎哥的帮助

syl1130 2016-03-18 23:09

还是提供下卸载注册表的详细信息给虎哥看下,谢谢


gnatix 2016-03-19 06:22
DefaultDirName={code:ExtractFileDir|{reg:HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\HDR Light Studio 5,UninstallString}}

[Registry]
Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"; ValueType: string; ValueName: "HDRLS_HOME_V4"; ValueData: "{code:ExtractFileDir|{reg:HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\HDR Light Studio 5,UninstallString}}"

syl1130 2016-03-19 23:09

感谢虎哥,代码测试完美了,太棒了。
谢谢虎哥,辛苦解答!~


查看完整版本: [-- 虎哥 inno如何写环境变量不用重启成功代码 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Time 0.013961 second(s),query:3 Gzip disabled