environment-variables - 卸载程序路径,而不是整个系统“路径”
问题描述
如果我卸载程序,系统“路径”条目会被删除,而不是创建的注册表值:“C:\Program Files (x86)\MyProg”,我该如何更改?
这是我的 Inno 设置脚本:
[Registry]
Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"; \
ValueType: expandsz; ValueName: "PATH"; ValueData: "{olddata};{app}"; Flags: uninsdeletekey \
Check: NeedsAddPath(ExpandConstant('{app}'))
[Code]
function NeedsAddPath(Param: string): boolean;
var
OrigPath: string;
begin
if not RegQueryStringValue(
HKEY_LOCAL_MACHINE,
'SYSTEM\CurrentControlSet\Control\Session Manager\Environment',
'Path', OrigPath)
then begin
Result := True;
exit;
end;
{ look for the path with leading and trailing semicolon }
{ Pos() returns 0 if not found }
Result :=
(Pos(';' + UpperCase(Param) + ';', ';' + UpperCase(OrigPath) + ';') = 0) and
(Pos(';' + UpperCase(Param) + '\;', ';' + UpperCase(OrigPath) + ';') = 0);
end;
解决方案
推荐阅读
- php - 高 CPU windows 服务器 IIS 7.5 进程 php-cgi.exe 仍然是高 CPU,尽管网站上没有访问者
- django - 在 django 2.2 中。select_related 字段不起作用?如何修复它
- java - 在java中收集数据框列名
- javascript - 使用office js displayDialogAsync函数在桌面Excel上禁用背景
- python - 是否可以将 python 多处理与 MS SQL Server 一起使用
- r - 计算连续的数字
- python - 为什么预言家预测(尤其是年度季节性)与情节组件中的年度季节性完全不同?
- javascript - pubnub心跳间隔对内存有影响吗?
- hive - 如何在 hive 的 select 语句中编写子查询
- powershell - 用于将属性从文件中间移动到文件末尾的 Powershell 脚本