2

仅当安装程序未以 VERYSILENT 运行时,我才想安装和注册某个文件。

我不知道我怎么能做到这一点。

我目前的线路是

Source: "M:\sqlite36_engine.dll"; DestDir: {sys}; Flags: uninsneveruninstall ignoreversion

有人可以告诉我如何做到这一点吗?

谢谢!

4

1 回答 1

3

由于仍然没有运行时函数或变量来确定安装程序是否在非常静默模式下运行,因此您需要创建自己的函数来通过迭代命令行参数来检查这一点。对于某个文件的条件安装,我们使用Check参数,它可以采用这样的函数通过其返回值来获取条件。下面的脚本应该做你想做的事:

[Files]
Source: "M:\sqlite36_engine.dll"; DestDir: {sys}; Flags: uninsneveruninstall ignoreversion; Check: not IsVerySilent

[Code]
function IsVerySilent: Boolean;
var
  I: Integer;
begin
  Result := False;
  for I := 1 to ParamCount do
    if CompareText(ParamStr(I), '/verysilent') = 0 then
    begin
      Result := True;
      Exit;
    end; 
end;
于 2013-09-16T15:54:53.813 回答