NSIS:检测是否安装了VS2005运行时

发布于 2024-08-04 15:58:02 字数 212 浏览 4 评论 0原文

1)使用 NSIS 安装程序检测系统中是否安装了 vs2005 运行时的最佳方法是什么?

2)如果未检测到运行时,这是添加运行时库的最佳方法 -

     a)running an embedded vcredist or 
     b)copying dlls to the installation folder

谢谢

1)Which is the best way to detect whether vs2005 runtimes are installed in a system using NSIS installer?

2)If runtimes are not detected which is the best way to add run time libraries-

     a)running an embedded vcredist or 
     b)copying dlls to the installation folder

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

你是我的挚爱i 2024-08-11 15:58:02
;-------------------------------
; Test if Visual Studio Redistributables 2005+ SP1 installed
; Returns -1 if there is no VC redistributables intstalled
Function CheckVCRedist
   Push $R0
   ClearErrors
   ReadRegDword $R0 HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{7299052b-02a4-4627-81f2-1818da5d550d}" "Version"

   ; if VS 2005+ redist SP1 not installed, install it
   IfErrors 0 VSRedistInstalled
   StrCpy $R0 "-1"

VSRedistInstalled:
   Exch $R0
FunctionEnd

当然,您需要运行嵌入式安装程序,而不是自己复制文件。根据您的 VC 运行时版本确认注册表项 7299052b-02a4-4627-81f2-1818da5d550d

;-------------------------------
; Test if Visual Studio Redistributables 2005+ SP1 installed
; Returns -1 if there is no VC redistributables intstalled
Function CheckVCRedist
   Push $R0
   ClearErrors
   ReadRegDword $R0 HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{7299052b-02a4-4627-81f2-1818da5d550d}" "Version"

   ; if VS 2005+ redist SP1 not installed, install it
   IfErrors 0 VSRedistInstalled
   StrCpy $R0 "-1"

VSRedistInstalled:
   Exch $R0
FunctionEnd

Of course you need to run the embedded installer, not copying files yourself. Confirm registry key 7299052b-02a4-4627-81f2-1818da5d550d against your version of VC runtime.

多情出卖 2024-08-11 15:58:02

不久前,我创建了一些示例代码来检查程序集缓存,它可能比仅仅检查要好卸载条目

A while ago, I created some sample code that checks the assembly cache, it's probably better than just checking for a uninstall entry

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文