XtInfoPlugin plug-in: Difference between revisions

From NSIS Wiki
Jump to navigationJump to search
m (Updated author and download links, and changed format of some pages.)
 
(9 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{PageAuthor|jari@razormotion.com}}
== Links ==
== Links ==
Plugin w/ source:
Plug-in with C++ source:
 
Version 1.0.0.1: <attach>XtInfoPlugin.zip</attach>


<attach>XtInfoPlugin.zip</attach><br>
Version 1.0.0.2: <attach>xtInfoPlugin_v_1.0.0.2.zip</attach>
[[Image:Zip.gif]] [http://www.razormotion.com/nsis/xtInfoPlugin.zip XtInfoPlugin.zip] (443 KB)


== Description ==
== Description ==
xtInfoPlugin determines version information for various components. All ID's are lowercase and no spaces - see in .onInit method.
'''Version:''' 1.0.0.1 (13/May/2004)
 
xtInfoPlugin determines version information for various components. This plug-in can gather the following:


*Installer Filename (ie. Setup.exe)
*Installer Filename (ie. Setup.exe)
Line 23: Line 28:
*OLEDB Versions (ie. 2.50.4403.8)
*OLEDB Versions (ie. 2.50.4403.8)
*Windows Service Pack IDs (ie, 1, 2a, 6a, etc.)
*Windows Service Pack IDs (ie, 1, 2a, 6a, etc.)
'''Version:''' 1.0.0.2 (15/Dec/2008)
* Fixed bug in IsAdministrator function. If user belongs to domain with lot of groups, admin rights check fails.
== How To Use ==
All ID's are lowercase and no spaces - see the example with .onInit method (bottom of page).
=== Functions Reference ===
==== xtInfoPlugin::CompareVersion ====
Compares two version numbers and outputs the result.
<h5>Syntax</h5>
<highlight-nsis>
Push "VersionNumber2"
Push "VersionNumber1"
xtInfoPlugin::CompareVersion
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; VersionNumber1, VersionNumber2
: Version numbers to compared relating from "VersionNumber1"'s point of view.
; ResultVar
: Variable where the comparasion result is returned from "VersionNumber1"'s point of view. If "1", "VersionNumber1" is greater than "VersionNumber2", if "0", it is equals to that, and if "-1", it is lesser than that.
<h5>Example</h5>
<highlight-nsis>
    Push "2.5"
    Push "2.81.1117.0"
    xtInfoPlugin::CompareVersion
    Pop $0 ;$0 = "1"
</highlight-nsis>
==== xtInfoPlugin::GetDotNetFrameworkId ====
Retrieves the ID number for the .NET Framework version installed in the computer.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::GetDotNetFrameworkId
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the .NET Framework's ID number for its version is returned.
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::GetDotNetFrameworkId
Pop $0 ;.NET Framework's ID number for its version
</highlight-nsis>
==== xtInfoPlugin::GetDotNetFrameworkVersion ====
Retrieves the version of .NET Framework, if it is installed in the computer.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::GetDotNetFrameworkVersion
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the version of .NET Framework is returned.
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::GetDotNetFrameworkVersion
Pop $0 ;.NET Framework's version
</highlight-nsis>
==== xtInfoPlugin::GetInstaller ====
Retrieves the installer's file name without its path.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::GetInstaller
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the installer's file name without its path is returned.
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::GetInstaller
Pop $0 ;Installer's file name without its path
</highlight-nsis>
==== xtInfoPlugin::GetInstallerFileName ====
Retrieves the installer's file name with its path.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::GetInstallerFileName
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the installer's file name with its path is returned.
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::GetInstallerFileName
Pop $0 ;Installer's file name with its path
</highlight-nsis>
==== xtInfoPlugin::GetInstallerFullPath ====
Retrieves the path to the installer's file.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::GetInstallerFullPath
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the path to the installer's file is returned.
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::GetInstallerFullPath
Pop $0 ;Path to the installer's file
</highlight-nsis>
==== xtInfoPlugin::GetInternetExplorerId ====
Retrieves the ID number for the Internet Explorer version installed in the computer.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::GetInternetExplorerId
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the Internet Explorer's ID number for its version is returned.
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::GetInternetExplorerId
Pop $0 ;Internet Explorer's ID number for its version
</highlight-nsis>
==== xtInfoPlugin::GetInternetExplorerVersion ====
Retrieves the version of Internet Explorer, if it is installed in the computer.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::GetInternetExplorerVersion
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the version of Internet Explorer is returned.
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::GetInternetExplorerVersion
Pop $0 ;Internet Explorer's version
</highlight-nsis>
==== xtInfoPlugin::GetLanguage ====
Retrieves the Windows system language, if it is installed in the computer.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::GetLanguage
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the Windows system language is returned.
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::GetLanguage
Pop $0 ;Windows system language
</highlight-nsis>
==== xtInfoPlugin::GetMDACId ====
Retrieves the ID number for the MDAC version installed in the computer.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::GetMDACId
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the MDAC's ID number for its version is returned.
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::GetMDACId
Pop $0 ;MDAC's ID number for its version
</highlight-nsis>
==== xtInfoPlugin::GetMDACVersion ====
Retrieves the version of MDAC, if it is installed in the computer.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::GetMDACVersion
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the version of MDAC is returned.
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::GetMDACVersion
Pop $1 ;MDAC's version
</highlight-nsis>
==== xtInfoPlugin::GetOLEDBId ====
Retrieves the ID number for the OLEDB version installed in the computer.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::GetOLEDBId
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the OLEDB's ID number for its version is returned.
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::GetOLEDBId
Pop $0 ;OLEDB's ID number for its version
</highlight-nsis>
==== xtInfoPlugin::GetOLEDBVersion ====
Retrieves the version of OLEDB, if it is installed in the computer.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::GetOLEDBVersion
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the version of OLEDB is returned.
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::GetOLEDBVersion
Pop $1 ;OLEDB's version
</highlight-nsis>
==== xtInfoPlugin::GetWindowsId ====
Retrieves the ID number for the Windows version installed in the computer.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::GetWindowsId
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the Windows's ID number for its version is returned.
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::GetWindowsId
Pop $0 ;Windows' ID number for its version
</highlight-nsis>
==== xtInfoPlugin::GetWindowsServicePackId ====
Retrieves the ID number for the Windows Service Pack version installed in the computer.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::GetWindowsServicePackId
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the Windows Service Pack's ID number for its version is returned.
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::GetWindowsServicePackId
Pop $0 ;Windows Service Pack's ID number for its version
</highlight-nsis>
==== xtInfoPlugin::GetWindowsVersion ====
Retrieves the version of Windows, if it is installed in the computer.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::GetWindowsVersion
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the version of Windows is returned.
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::GetWindowsVersion
Pop $1 ;Windows's version
</highlight-nsis>
==== xtInfoPlugin::IsAdministrator ====
Detects if the current user has administrator rights.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::IsAdministrator
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the string "true" will be outputted if the current user has administrator rights, otherwise it is "false".
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::IsAdministrator
Pop $0 ;"true" if the current user has administrator rights, otherwise it is "false"
</highlight-nsis>
==== xtInfoPlugin::IsDotNetFrameworkInstalled ====
Detects if .NET Framework is installed in the computer.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::IsDotNetFrameworkInstalled
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the string "true" will be outputted if the .NET Framework is installed, otherwise it is "false".
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::IsDotNetFrameworkInstalled
Pop $0 ;"true" if it is installed, otherwise it is "false"
</highlight-nsis>
==== xtInfoPlugin::IsDotNetFrameworkInstalled ====
Detects if .NET Framework is installed in the computer.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::IsDotNetFrameworkInstalled
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the string "true" will be outputted if the .NET Framework is installed, otherwise it is "false".
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::IsDotNetFrameworkInstalled
Pop $0 ;"true" if it is installed, otherwise it is "false"
</highlight-nsis>
==== xtInfoPlugin::IsWindowsXXXX ====
Detects if the XXXX version of Windows is installed in the computer. Replace "XXXX" with either:
*''95'';
*''98'';
*''ME'';
*''NT3'';
*''NT4'';
*''2000'';
*''XP'';
*''2003''.
<h5>Syntax</h5>
<highlight-nsis>
xtInfoPlugin::IsWindowsXXXX ;Replace "XXXX" with Windows versions on the list above.
Pop "ResultVar"
</highlight-nsis>
<h5>Parameters</h5>
; ResultVar
: Variable where the string "true" will be outputted if the specific Windows version is installed, otherwise it is "false".
<h5>Example</h5>
<highlight-nsis>
xtInfoPlugin::IsWindows2003
Pop $0 ;"true" if Windows 2003 is installed, otherwise it is "false"
</highlight-nsis>


== Example (also found in .zip file) ==
== Example (also found in .zip file) ==
Line 87: Line 577:
</highlight-nsis>
</highlight-nsis>


Page author: [[User:jari@razormotion.com|jari@razormotion.com]]
[[Category:Plugins]]

Latest revision as of 11:33, 15 December 2008

Author: jari@razormotion.com (talk, contrib)


Links

Plug-in with C++ source:

Version 1.0.0.1: XtInfoPlugin.zip (443 KB)

Version 1.0.0.2: xtInfoPlugin_v_1.0.0.2.zip (1338 KB)

Description

Version: 1.0.0.1 (13/May/2004)

xtInfoPlugin determines version information for various components. This plug-in can gather the following:

  • Installer Filename (ie. Setup.exe)
  • Installer FullPath (ie. D:\SetupFiles)
  • Installer FileName (ie. D:\SetupFiles\Setup.exe)
  • Windows Language (ie. Danish, English, German, etc.)
  • .NET Framework IDs (ie. 1.0, 1.1, 2.0, etc.)
  • .NET Framework Version (ie. 1.0.3705, 1.1.4322, etc.)
  • Internet Explorer IDs (ie. 4.01, 5.0, 5.01, 6.0, etc.)
  • Internet Explorer Versions (ie, 5.00.2920.0000, 6.00.2600.0000, etc.)
  • Windows IDs (ie. 95, 98, me, xp, nt3, nt4, 2003, etc)
  • Windows Versions (ie, 5.1.2800, etc.)
  • MDAC IDs (ie. 2.5)
  • MDAC Versions (ie. 2.50.4403.9)
  • OLEDB IDs (ie. 2.5)
  • OLEDB Versions (ie. 2.50.4403.8)
  • Windows Service Pack IDs (ie, 1, 2a, 6a, etc.)


Version: 1.0.0.2 (15/Dec/2008)

  • Fixed bug in IsAdministrator function. If user belongs to domain with lot of groups, admin rights check fails.

How To Use

All ID's are lowercase and no spaces - see the example with .onInit method (bottom of page).

Functions Reference

xtInfoPlugin::CompareVersion

Compares two version numbers and outputs the result.

Syntax
Push "VersionNumber2"
Push "VersionNumber1"
xtInfoPlugin::CompareVersion
Pop "ResultVar"
Parameters
VersionNumber1, VersionNumber2
Version numbers to compared relating from "VersionNumber1"'s point of view.
ResultVar
Variable where the comparasion result is returned from "VersionNumber1"'s point of view. If "1", "VersionNumber1" is greater than "VersionNumber2", if "0", it is equals to that, and if "-1", it is lesser than that.
Example
    Push "2.5"
    Push "2.81.1117.0"
    xtInfoPlugin::CompareVersion
    Pop $0 ;$0 = "1"

xtInfoPlugin::GetDotNetFrameworkId

Retrieves the ID number for the .NET Framework version installed in the computer.

Syntax
xtInfoPlugin::GetDotNetFrameworkId
Pop "ResultVar"
Parameters
ResultVar
Variable where the .NET Framework's ID number for its version is returned.
Example
xtInfoPlugin::GetDotNetFrameworkId
Pop $0 ;.NET Framework's ID number for its version

xtInfoPlugin::GetDotNetFrameworkVersion

Retrieves the version of .NET Framework, if it is installed in the computer.

Syntax
xtInfoPlugin::GetDotNetFrameworkVersion
Pop "ResultVar"
Parameters
ResultVar
Variable where the version of .NET Framework is returned.
Example
xtInfoPlugin::GetDotNetFrameworkVersion
Pop $0 ;.NET Framework's version

xtInfoPlugin::GetInstaller

Retrieves the installer's file name without its path.

Syntax
xtInfoPlugin::GetInstaller
Pop "ResultVar"
Parameters
ResultVar
Variable where the installer's file name without its path is returned.
Example
xtInfoPlugin::GetInstaller
Pop $0 ;Installer's file name without its path

xtInfoPlugin::GetInstallerFileName

Retrieves the installer's file name with its path.

Syntax
xtInfoPlugin::GetInstallerFileName
Pop "ResultVar"
Parameters
ResultVar
Variable where the installer's file name with its path is returned.
Example
xtInfoPlugin::GetInstallerFileName
Pop $0 ;Installer's file name with its path

xtInfoPlugin::GetInstallerFullPath

Retrieves the path to the installer's file.

Syntax
xtInfoPlugin::GetInstallerFullPath
Pop "ResultVar"
Parameters
ResultVar
Variable where the path to the installer's file is returned.
Example
xtInfoPlugin::GetInstallerFullPath
Pop $0 ;Path to the installer's file

xtInfoPlugin::GetInternetExplorerId

Retrieves the ID number for the Internet Explorer version installed in the computer.

Syntax
xtInfoPlugin::GetInternetExplorerId
Pop "ResultVar"
Parameters
ResultVar
Variable where the Internet Explorer's ID number for its version is returned.
Example
xtInfoPlugin::GetInternetExplorerId
Pop $0 ;Internet Explorer's ID number for its version

xtInfoPlugin::GetInternetExplorerVersion

Retrieves the version of Internet Explorer, if it is installed in the computer.

Syntax
xtInfoPlugin::GetInternetExplorerVersion
Pop "ResultVar"
Parameters
ResultVar
Variable where the version of Internet Explorer is returned.
Example
xtInfoPlugin::GetInternetExplorerVersion
Pop $0 ;Internet Explorer's version

xtInfoPlugin::GetLanguage

Retrieves the Windows system language, if it is installed in the computer.

Syntax
xtInfoPlugin::GetLanguage
Pop "ResultVar"
Parameters
ResultVar
Variable where the Windows system language is returned.
Example
xtInfoPlugin::GetLanguage
Pop $0 ;Windows system language

xtInfoPlugin::GetMDACId

Retrieves the ID number for the MDAC version installed in the computer.

Syntax
xtInfoPlugin::GetMDACId
Pop "ResultVar"
Parameters
ResultVar
Variable where the MDAC's ID number for its version is returned.
Example
xtInfoPlugin::GetMDACId
Pop $0 ;MDAC's ID number for its version

xtInfoPlugin::GetMDACVersion

Retrieves the version of MDAC, if it is installed in the computer.

Syntax
xtInfoPlugin::GetMDACVersion
Pop "ResultVar"
Parameters
ResultVar
Variable where the version of MDAC is returned.
Example
xtInfoPlugin::GetMDACVersion
Pop $1 ;MDAC's version

xtInfoPlugin::GetOLEDBId

Retrieves the ID number for the OLEDB version installed in the computer.

Syntax
xtInfoPlugin::GetOLEDBId
Pop "ResultVar"
Parameters
ResultVar
Variable where the OLEDB's ID number for its version is returned.
Example
xtInfoPlugin::GetOLEDBId
Pop $0 ;OLEDB's ID number for its version

xtInfoPlugin::GetOLEDBVersion

Retrieves the version of OLEDB, if it is installed in the computer.

Syntax
xtInfoPlugin::GetOLEDBVersion
Pop "ResultVar"
Parameters
ResultVar
Variable where the version of OLEDB is returned.
Example
xtInfoPlugin::GetOLEDBVersion
Pop $1 ;OLEDB's version

xtInfoPlugin::GetWindowsId

Retrieves the ID number for the Windows version installed in the computer.

Syntax
xtInfoPlugin::GetWindowsId
Pop "ResultVar"
Parameters
ResultVar
Variable where the Windows's ID number for its version is returned.
Example
xtInfoPlugin::GetWindowsId
Pop $0 ;Windows' ID number for its version

xtInfoPlugin::GetWindowsServicePackId

Retrieves the ID number for the Windows Service Pack version installed in the computer.

Syntax
xtInfoPlugin::GetWindowsServicePackId
Pop "ResultVar"
Parameters
ResultVar
Variable where the Windows Service Pack's ID number for its version is returned.
Example
xtInfoPlugin::GetWindowsServicePackId
Pop $0 ;Windows Service Pack's ID number for its version

xtInfoPlugin::GetWindowsVersion

Retrieves the version of Windows, if it is installed in the computer.

Syntax
xtInfoPlugin::GetWindowsVersion
Pop "ResultVar"
Parameters
ResultVar
Variable where the version of Windows is returned.
Example
xtInfoPlugin::GetWindowsVersion
Pop $1 ;Windows's version

xtInfoPlugin::IsAdministrator

Detects if the current user has administrator rights.

Syntax
xtInfoPlugin::IsAdministrator
Pop "ResultVar"
Parameters
ResultVar
Variable where the string "true" will be outputted if the current user has administrator rights, otherwise it is "false".
Example
xtInfoPlugin::IsAdministrator
Pop $0 ;"true" if the current user has administrator rights, otherwise it is "false"

xtInfoPlugin::IsDotNetFrameworkInstalled

Detects if .NET Framework is installed in the computer.

Syntax
xtInfoPlugin::IsDotNetFrameworkInstalled
Pop "ResultVar"
Parameters
ResultVar
Variable where the string "true" will be outputted if the .NET Framework is installed, otherwise it is "false".
Example
xtInfoPlugin::IsDotNetFrameworkInstalled
Pop $0 ;"true" if it is installed, otherwise it is "false"

xtInfoPlugin::IsDotNetFrameworkInstalled

Detects if .NET Framework is installed in the computer.

Syntax
xtInfoPlugin::IsDotNetFrameworkInstalled
Pop "ResultVar"
Parameters
ResultVar
Variable where the string "true" will be outputted if the .NET Framework is installed, otherwise it is "false".
Example
xtInfoPlugin::IsDotNetFrameworkInstalled
Pop $0 ;"true" if it is installed, otherwise it is "false"

xtInfoPlugin::IsWindowsXXXX

Detects if the XXXX version of Windows is installed in the computer. Replace "XXXX" with either:

  • 95;
  • 98;
  • ME;
  • NT3;
  • NT4;
  • 2000;
  • XP;
  • 2003.
Syntax
xtInfoPlugin::IsWindowsXXXX ;Replace "XXXX" with Windows versions on the list above.
Pop "ResultVar"
Parameters
ResultVar
Variable where the string "true" will be outputted if the specific Windows version is installed, otherwise it is "false".
Example
xtInfoPlugin::IsWindows2003
Pop $0 ;"true" if Windows 2003 is installed, otherwise it is "false"

Example (also found in .zip file)

; Download xtInfoPlugin from
; http://www.razormotion.com/nsis/xtInfoPlugin.zip
; best to copy xtInfoPlugin.dll to NSIS\Plugins and remove below code
!addplugindir ".\" ; detect xtInfoPlugin.dll in current directory
!addplugindir "..\" ; detect xtInfoPlugin.dll in parent directory
Name "NSIS xtInfoPlugin-MinimalExample"
OutFile "xtInfoPlugin-MinimalExample.exe"
SetCompress off ; Useful to disable compression under development
!include "${NSISDIR}\Include\MUI.nsh"
!include "${NSISDIR}\Include\LogicLib.nsh"
 
Function .onInit
 
    ; CompareVersion example
    ; (C++)CompareVersion("2.50.4403.9","2.50.4403.9") return 0 (a==b)
    ; (C++)CompareVersion("2.50.4403.9","2.71.9030.0") return 1 (b>a)
    ; (C++)CompareVersion("2.71.9030.0","2.50.4403.9") return -1 (a>b)
 
    StrCpy $2 "2.5"
    Push $2
    xtInfoPlugin::GetMDACVersion
    Pop $1
    Push $1
    xtInfoPlugin::CompareVersion
    Pop $0
    ${if} $0 >= 0
        MessageBox MB_OK "MDAC version is Newer or Equal to $2 (found: $1)"
    ${else}
        MessageBox MB_OK "MDAC version is OLDER than $2 (found: $1)"
    ${endif}
 
    ; ---------------------------------------------------------------------
 
    ; Say we want our application to only work with .NET Framework v1.1
 
    xtInfoPlugin::IsDotNetFrameworkInstalled
    Pop $0
    ${if} $0 == true
        xtInfoPlugin::GetDotNetFrameworkId
        ; GetDotNetFrameworkId (id methods) return x.x and not build info
        Pop $0
        ${if} $0 == "1.1"
            StrCpy $0 "Version 1.1 Installed"
        ${else}
            StrCpy $0 "Version 1.0 Installed"
        ${endif}
    ${else}
        StrCpy $0 "Not installed"
    ${endif}
    xtInfoPlugin::GetDotNetFrameworkVersion
    Pop $1
    MessageBox MB_OK ".NET Framework version check = $0 (found: $1)"
    Quit ; Quit before installer start
 
FunctionEnd
 
; Required by NSIS, we don't need it!
Section
SectionEnd