forked from alex-sitnikov/NsisDotNetChecker
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
34 lines (29 loc) · 2.03 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
.NET Framework Checker NSIS plugin is used to detect if the required .NET Framwork is installed and if it is not - plugin will download and install the required package. Plugin C++ source code is based on the Aaron Stebner work described at http://blogs.msdn.com/b/astebner/archive/2009/06/16/9763379.aspx.
Structure:
bin - compiled NSIS plugin (ready-to-use)
plugin - contains source code for building DotNetChecker plugin in Visual Studio 2010
nsis - contains CheckNetFramework macros (DotNetChecker.nsh) and example NSIS installation file
Usage:
1. Copy DotNetChecker.dll to NSIS plugins directory (usually C:\Program Files\Nsis\Plugins\)
2. Add to your installer project DotNetChecker.nsh file
3. Reference DotNetChecker.nsh in your main NSI file like this:
!include "DotNetChecker.nsh"
4. Insert macros with the version of required .NET framework like this:
!insertmacro CheckNetFramework 40Client ; if your application targets .NET 4.0 Client Framework
OR
!insertmacro CheckNetFramework 40Full ; if your application targets .NET 4.0 Full Framework
OR
!insertmacro CheckNetFramework 35 ; if your application targets .NET 3.5 Framework
OR
!insertmacro CheckNetFramework 30 ; if your application targets .NET 3.0 Framework
OR
!insertmacro CheckNetFramework 20 ; if your application targets .NET 2.0 Framework
OR
!insertmacro CheckNetFramework 11 ; if your application targets .NET 1.1 Framework
OR
!insertmacro CheckNetFramework 10 ; if your application targets .NET 1.0 Framework
NB: Script will download .NET 3.5 for both .NET 3.0 and .NET 3.5 requirements. The same rule applies to .NET 1.1 and .NET 1.0. If you want to change this behavior - feel free to edit DotNetChecker.nsh.
NB2: Plugin is also capable of detecting Framework Service Pack Level. To use this functionality, just call one of the corresponding functions (i.e. DotNetChecker::GetDotNet11ServicePack). The return value (Pop $0) will be:
-2 if framework is not installed
-1 if no service pack installed for this framework
some positive int value otherwise