Installation 在Inno安装程序中无需用户干预即可安装Microsoft Access数据库引擎必备组件

Installation 在Inno安装程序中无需用户干预即可安装Microsoft Access数据库引擎必备组件,installation,inno-setup,pascalscript,Installation,Inno Setup,Pascalscript,我正在继续我在Inno设置中的工作,所以现在我有一个关于它的新问题。 我试图在安装我的最终应用程序之前执行一些程序,为此我使用函数 当我尝试使用以下代码时: [文件] 来源:“AccessDatabaseEngine_x64.exe”;DestDir:“{tmp}”;标志:dontcopy noencryption 资料来源:“Database.accdb”;DestDir:“{app}”;标志:忽略版本 [守则] 函数PrepareToInstall(var NeedsRestart:Bool

我正在继续我在Inno设置中的工作,所以现在我有一个关于它的新问题。 我试图在安装我的最终应用程序之前执行一些程序,为此我使用函数

当我尝试使用以下代码时:

[文件]
来源:“AccessDatabaseEngine_x64.exe”;DestDir:“{tmp}”;标志:dontcopy noencryption
资料来源:“Database.accdb”;DestDir:“{app}”;标志:忽略版本
[守则]
函数PrepareToInstall(var NeedsRestart:Boolean):字符串;
变量
结果代码:整数;
开始
ExtractTemporaryFile('AccessDatabaseEngine_x64.exe');
如果Exec(ExpandConstant('{tmp}\AccessDatabaseEngine_x64.exe'),'quit','',SW_HIDE,ewwaitUnterminated,ResultCode),则
开始
msgbox('True:{tmp}\AccessDatabaseEngine_x64.exe:'+IntToStr(ResultCode),mbInformation,MB_OK);
终止
否则开始
msgbox('False:{tmp}\AccessDatabaseEngine_x64.exe:'+syserromessage(ResultCode),mbInformation,MB_OK);
终止
终止
我得到这个错误:

另一方面,如果我使用以下代码:

[文件]
来源:“AccessDatabaseEngine_x64.exe”;DestDir:“{tmp}”;标志:dontcopy noencryption
资料来源:“Database.accdb”;DestDir:“{app}”;标志:忽略版本
[守则]
函数PrepareToInstall(var NeedsRestart:Boolean):字符串;
变量
结果代码:整数;
开始
ExtractTemporaryFile('AccessDatabaseEngine_x64.exe');
如果Exec(ExpandConstant('{tmp}\AccessDatabaseEngine_x64.exe')、''、''、SW_HIDE、ewwaitUnterminated、ResultCode),则
开始
msgbox('True:{tmp}\AccessDatabaseEngine_x64.exe:'+IntToStr(ResultCode),mbInformation,MB_OK);
终止
否则开始
msgbox('False:{tmp}\AccessDatabaseEngine_x64.exe:'+syserromessage(ResultCode),mbInformation,MB_OK);
终止
终止
我得到另一个文件的安装向导。有些人喜欢这样:

我想在没有用户干预的情况下自动安装其他程序

可能吗?你能帮我吗


谢谢你的预支

使用屏幕显示
/quiet
,您可以使用
退出

因此,使用
/quiet
,而不是
退出

如果Exec(ExpandConstant('{tmp}\AccessDatabaseEngine_x64.exe')、'/quiet'、''、SW_HIDE、ewwaitUnterminated、ResultCode)则

我没有注意,正确答案在第一张图片中应该使用的单词是:/quiet;不是/完全不是/退出

作为支持(如果这再次发生在其他人身上),我留下下一个链接:


同样,也有许多thaks值得您注意。

Hi@MartinPrikryl保留了第一个msgbox“Microsoft Access Database Engine 2010”,并且没有安装该程序。我们不会为您找到随机可执行文件的正确命令行参数。这根本不是一个编程问题。它甚至与Inno设置无关。