VCRedist.exe静默安装方法(转)

INNO setup 制作安装包  的时候,发布VC++运行时

[Run]
Filename: {app}vcredist_x86.exe; Parameters: /q; WorkingDir: {tmp}; Flags: skipifdoesntexist; StatusMsg: "Installing Microsoft Visual C++ Runtime ..."; Check: NeedInstallVC9SP1

我们打包基于VC++开发的应用程序,我们会一同打包一个VC运行库,否则安装到一些非开发环境中,你的应用程序依然可以正确运行。

Visual C++ 2008 Redistributable Package 包括了(VCRedist_x86.exe,VCRedist_x64.exe以及VCRedist_ia64.exe)。

就是一个简单的VCRedist.exe安装集成,结果下载了之后安装,安装完成后在系统或某个盘的根目录下留下一堆的临时文件:

临时文件列表

调查后发现,这是Microsoft Visual C++ 2008 Redistributable Package的一个已知Bug,微软在SP1中修正。

一种解决办法是,安装完成后手动删除,但由于位置随机,所以在集成安装包中删除还是有些困难的。

当然,更简单的办法就是使用Microsoft Visual C++ 2008 SP1 Redistributable Package,这是x86的下载链接。

这是VCRedist.exe的静默安装命令,其他调用命令见Astebner的博客

Vcredist_x86.exe /q:a /c:"msiexec /i vcredist.msi /qn /l*v %temp%vcredist_x86.log"

如果我们直接调用VCRedist.exe安装,会弹出一个解压的对话框,如果不想让这个界面出现,可以先解压VCRedist.exe,然后通过“vc_red.msi /qn”来完成静默安装(注意InstallShield中是通过msiexec.exe安装的msi)。

另外,同时确认过icrosoft Visual C++ 2005 Redistributable Package不存在上述问题。

原文地址:https://www.cnblogs.com/micro-chen/p/6042949.html