用NSIS制作的安装包,在没有安装VC运行环境的情况下,运行该安装包结束后,启动程序,可能会出现side-by-side configuration error。
解决该问题的办法就是下载vc_red.cab 和vc_red.msi,双击运行vc_red.msi(实际上是安装vc_red.cab),安装完成后再运行程序则不会出现该错误。
我们也可以直接将这两个文件放进安装包中。这样运行安装包的时候就可以直接安装c_red.cab。具体脚本如下:
ReserveFile "vc_red.msi"
ReserveFile "vc_red.cab"
...
Function .onInit
InitPluginsDir
File "/oname=$PLUGINSDIR\vc_red.msi" "vc_red.msi"
File "/oname=$PLUGINSDIR\vc_red.cab" "vc_red.cab"
FunctionEnd
...
Section ""
;运行msiexec.exe 来静默安装vc_red.cab
ExecWait 'msiexec.exe /i "$PLUGINSDIR\vc_red.msi" /quiet /norestart'
SectionEnd