VC 8.0 Redistributables: Difference between revisions

From NSIS Wiki
Jump to navigationJump to search
(Hints for newer runtime versions added)
(Added info for newer versions of visual studio runtimes)
 
(One intermediate revision 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 ==
Line 23: Line 32:
[[Category:Other Products Handling Functions]]
[[Category:Other Products Handling Functions]]
[[Category:Other Products Version Detection Functions]]
[[Category:Other Products Version Detection Functions]]
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}"

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