首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Inno Setup:如何在运行unins000.exe时隐藏卸载检查提示?

Inno Setup:如何在运行unins000.exe时隐藏卸载检查提示?
EN

Stack Overflow用户
提问于 2017-01-12 16:55:36
回答 1查看 812关注 0票数 1

我尝试过在图标部分使用"/silent“参数,如下所示:

代码语言:javascript
复制
Name: "{group}\{code:GetUninstallExeNa}"; Filename: "{app}\unins000.exe"; Parameters:"/SILENT /log";

当我从开始菜单,甚至从控制面板的小程序卸载时,它确实起作用了。但当我双击安装目录中的unins000.exe时,它仍然显示确认卸载提示。

我还尝试将参数"/SILENT /log“附加到注册表中的UninstallString。但当我直接从安装目录运行unins000.exe时,它仍然会显示提示。

有什么建议吗?

EN

回答 1

Stack Overflow用户

发布于 2017-01-12 17:21:42

您可以在Registry中将应用程序的UninstallString更改为始终在Silent mode中运行。

代码语言:javascript
复制
[Code]
procedure ChangeUninstallString;
var
  sUnInstPath: String;
  sUnInstallString: String;
begin
  sUnInstPath := ExpandConstant('Software\Microsoft\Windows\CurrentVersion\Uninstall\{#emit SetupSetting("AppId")}_is1');
  sUnInstallString := '';
  if not RegQueryStringValue(HKLM, sUnInstPath, 'UninstallString', sUnInstallString) then begin
    RegQueryStringValue(HKCU, sUnInstPath, 'UninstallString', sUnInstallString);
    RegWriteStringValue(HKCU, sUnInstPath, 'UninstallString', sUnInstallString + '/SILENT');
  end
  else begin
    RegWriteStringValue(HKLM, sUnInstPath, 'UninstallString', sUnInstallString + '/SILENT');
  end;
end;

procedure CurStepChanged(CurStep: TSetupStep);
begin  
  if CurStep=ssDone then begin
   ChangeUninstallString;
  end;
end; 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41608782

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档