Installation 使用Inno安装程序运行代码有什么问题?

Installation 使用Inno安装程序运行代码有什么问题?,installation,runtime,ms-access-2007,inno-setup,Installation,Runtime,Ms Access 2007,Inno Setup,我已经用Inno安装程序编写了代码来安装2007桌面MSAccess拆分数据库,并包括Access Runtime 2007。我已经尝试了几种使用数据库“运行”AccessRuntime.exe的变体,但仍然出现错误。以下是一些常量和部分: MyAppName "SSDExpress" DefaultDirName=C:\{#MyAppName} OutputDir= C:\{#MyAppName} MyAppExeName "setup.exe" [Files] Source: C:pat

我已经用Inno安装程序编写了代码来安装2007桌面MSAccess拆分数据库,并包括Access Runtime 2007。我已经尝试了几种使用数据库“运行”AccessRuntime.exe的变体,但仍然出现错误。以下是一些常量和部分:

MyAppName "SSDExpress"
DefaultDirName=C:\{#MyAppName}
OutputDir= C:\{#MyAppName}
MyAppExeName "setup.exe"


[Files]
Source: C:pathtofiles\SSDExpress.accde; DestDir: "{app}"; Flags: ignoreversion
Source: C:pathtofiles\SSDExpress_be.accdb; DestDir: "{app}"; Flags: ignoreversion
Source: C:pathtofiles\AccessRuntime.exe; DestDir: "{app}"; Flags: ignoreversion
我分别尝试了这3个运行代码,但都没有成功。每次我都会收到与运行时相关的错误

第一次尝试

[Run]
Filename:{app}\AccessRuntime.exe; Description:{cm:LaunchProgram,{#MyAppName}};Flags:
shellexec postinstall skipifsilent; Parameters: “””{app}\{#MyAppExeName}””/runtime”
第二次尝试

[Run]
Filename: Filename:{app}\{#MyAppExeName;Parameters: “/i””{app}\AccessRuntime.exe””/qn”
第三次尝试

[Run]
Filename: AccessRuntime.exe; Parameters: “/i””{app}\AccessRuntime.exe””/passive”
我做错了什么?(代码可以将所有文件放入DefaultDirectory,但我仍然收到消息,它无法找到运行代码的“AccessRuntime.exe”。)

请原谅我在陈述我的问题时感到困惑。知道我以前从未编写过安装脚本可能会有所帮助。我唯一的经验是使用MS Access打包向导,我想我假设Inno也会进行类似的设置

为了澄清我想做什么:我正在尝试获取一个脚本来为用户创建一个安装程序,我可以发送给他们,他们可以运行该脚本来安装桌面MS Access 2007数据库(SSDExpress),如果他们还没有访问权限,则需要运行Access Runtime。理想情况下,我希望在安装包中包含Access Runtime,而不是下载。所以我希望安装程序安装这个程序,当他们访问它时,它将作为一个独立的桌面程序运行。我希望FE是独立的(相对于PW accdr文件),这样我就可以根据需要更新程序更改。 我提前感谢你的耐心。Tricia

第一次尝试是正确的,其他的都是错误的。(或者至少语法是正确的;您必须自己发现要传递给运行时的正确参数是什么。)

但有两件事需要注意:

  • 这可能只是在这里发布的一个副作用,但您的代码包含“智能”引号,而不是标准引号。您必须将这些更改为标准引号才能使其正常工作

  • 文件名和
    参数
    值中的
    /runtime
    参数之间没有空格

  • 您需要做的第一件事就是尝试使用您认为需要的参数从命令行运行它,并确保它能够正常工作。一旦您知道它可以从命令行运行,就只需使用正确的语法让Inno在安装过程中运行它