4

我想将服务文件复制到 {app} 目录,然后将其用作 InstallUtil.exe 中的参数。

这是我的代码的一部分:

[Files]
Source: WCFService.exe; DestDir: {app}
Source: WCFService.exe.config; DestDir: {app}

[Run]
Filename: {dotnet40}\InstallUtil.exe; Parameters: {app}\WCFService.exe

此代码不起作用(但文件已正确复制到 {app} 目录中)。但是,如果我使用这样的东西:

[Files]
Source: WCFService.exe; DestDir: {src}
Source: WCFService.exe.config; DestDir: {src}

[Run]
Filename: {dotnet40}\InstallUtil.exe; Parameters: WCFService.exe

它工作正常。有谁知道发生了什么?我必须使用 inno 设置。

4

2 回答 2

4

{app}可能包含空格,因此在命令行上使用时必须正确引用:

[Run]
Filename: {dotnet40}\InstallUtil.exe; Parameters: """{app}\WCFService.exe"""

最外面的一组引号是针对 Inno 本身的;其中的每对双引号最终都会在命令行上放置一个单引号。

于 2013-08-12T20:49:40.487 回答
4

在这种情况下,您可以尝试在该部分中将WorkingDir参数设置为。像这样:{app}[Run]

[Run]
Filename: "{dotnet40}\InstallUtil.exe"; WorkingDir: "{app}"; Parameters: "WCFService.exe"
于 2013-08-12T08:19:52.430 回答