VC 8.0 Redistributables: Difference between revisions

From NSIS Wiki
Jump to navigationJump to search
(Added note about DLLs and a link to a related article)
(Added info for newer versions of visual studio runtimes)
 
(2 intermediate revisions by the same user not shown)
Line 13: Line 13:
   
   
  VSRedistInstalled:
  VSRedistInstalled:
     Exch $R0
     Exch $R0 FunctionEnd
FunctionEnd


It should be noted that the DLLs could be installed even if the redistributable isn't installed. One example would be if the user has Visual Studios installed, then they have the dlls without the redist.
It should be noted that the DLLs could be installed even if the redistributable isn't installed. One example would be if the user has Visual Studios installed, then they have the dlls without the redist.
'''Newer Visual Studio runtime versions:'''
Visual Studio 2005, x86 SP1: ( 8.0.59193) "{837b34e3-7c30-493c-8f6a-2b0f04e2912c}"
Visual Studio 2008, x86 SP1: ( 9.0.30729) "{6AFCA4E1-9B78-3640-8F72-A7BF33448200}"
Visual Studio 2010, x86 SP0: (10.0.30319) "{196BB40D-1578-3D01-B289-BEFC77A11A1E}"


== Related articles ==
== Related articles ==

Latest revision as of 11:25, 27 January 2011

This function detects if VC++ 8.0 redistributables are installed on the machine

;-------------------------------
; 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

It should be noted that the DLLs could be installed even if the redistributable isn't installed. One example would be if the user has Visual Studios installed, then they have the dlls without the redist.

Newer Visual Studio runtime versions:

Visual Studio 2005, x86 SP1: ( 8.0.59193) "{837b34e3-7c30-493c-8f6a-2b0f04e2912c}"

Visual Studio 2008, x86 SP1: ( 9.0.30729) "{6AFCA4E1-9B78-3640-8F72-A7BF33448200}"

Visual Studio 2010, x86 SP0: (10.0.30319) "{196BB40D-1578-3D01-B289-BEFC77A11A1E}"


Related articles

WinSxS QueryAssemblyInfo to check if assembly is installed