我正在尝试使用 Inno Setup 在来宾计算机上安装一些 Visual Studio dll。这是我的脚本的[Files]
部分:
[Files]
Source: ...
...
Source: "C:\Windows\System32\msvcp140.dll"; DestDir: "{app}"
Source: "C:\Windows\System32\vcruntime140.dll"; DestDir: "{app}"
Source: "C:\Windows\System32\vcruntime140_1.dll"; DestDir: "{app}"
它在最后一行给了我一个错误,说它找不到源文件,尽管它在那里,它是否与_
与 Inno Setup 有特殊效果有关?
在我的 64 位系统上,vcruntime140_1.dll
在真正的 64 位C:\Windows\System32
中。Inno Setup 编译器是一个 32 位应用程序。由于WOW64 file system redirection,当 32 位应用程序尝试访问C:\Windows\System32
时,它会重定向到C:\Windows\SysWOW64
,其中有 32 位系统文件。没有0
正如其他人评论的那样,这也向您展示了您的方法的弱点。您可能甚至没有意识到 DLL 有多个版本。如果您使用官方的Visual C++ Redistributable installer,它将负责将正确的版本安装到正确的位置。虽然你不会。你不应该弄乱System32
文件夹。
一些示例:
How to install Microsoft VC++ redistributables silently in Inno Setup? How to make vcredist_x86 reinstall only if not yet installed?本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(23条)