GetVersion (Windows) plug-in: Difference between revisions
From NSIS Wiki
Jump to navigationJump to search
(direct download link) |
(moved the readme to the wiki, more up to date infos) |
||
Line 1: | Line 1: | ||
{{PageAuthor|Afrow UK}} | {{PageAuthor|Afrow UK}} | ||
== Description == | == Description == | ||
A plugin that gets Windows version information (name, type, version, server name, service pack, service pack build). | A plugin that gets Windows version information (name, type, version, server name, service pack, service pack build). | ||
== Installation == | |||
Place GetVersion.dll in your NSIS\Plugins folder or simply extract all files in the Zip to NSIS\. | |||
== Changelog == | |||
'''v0.9 - 7 June 2008''' | |||
*Major code clean up. | |||
*All functions now return an empty string if GetVersionEx API call fails. | |||
*Added Windows types and server names for Vista. | |||
'''v0.8 - 22 August 2007''' | |||
*Fixed WindowsType. | |||
*Removed function to get IE version. | |||
'''v0.7 - 16 July 2006''' | |||
*WindowsName now returns simple names (not Windows #). | |||
'''v0.6 - 11 April 2006''' | |||
*Added support for Windows CE. | |||
'''v0.5 - 11 March 2006''' | |||
*Added support for Windows XP Media Center Edition (in WindowsType). | |||
*Added support for Windows XP Tablet PC Edition (in WindowsType). | |||
'''v0.4 - 10 March 2006''' | |||
*Added WindowsPlatformId. | |||
*Added WindowsPlatformArchitecture. | |||
'''v0.3 - 12 February 2006''' | |||
*Added support for Windows Vista and Longhorn Server. | |||
'''v0.2 - 15 January 2006''' | |||
*Added support for Windows x64. | |||
*No support added for Windows Vista as yet (waiting for Microsoft to update their page for it!) | |||
'''v0.1 - 16 July 2005''' | |||
*First version. | |||
== Download == | == Download == | ||
< | [[File:GetVersion.zip]] | ||
== The Functions == | |||
<highlight-nsis> | |||
GetVersion::WindowsName | |||
Pop $R0 | |||
Gets name of Windows. This includes: | |||
Vista | |||
Server Longhorn | |||
Server 2003 | |||
Server 2003 R2 | |||
XP | |||
XP x64 | |||
2000 | |||
CE | |||
NT | |||
ME | |||
98 | |||
98 SE | |||
95 | |||
95 OSR2 | |||
Win32s | |||
--------------------------- | |||
GetVersion::WindowsType | |||
Pop $R0 | |||
Gets type of Windows OS. | |||
For Windows NT: | |||
Workstation 4.0 | |||
For Windows XP: | |||
Home Edition | |||
Professional | |||
Professional x64 Edition | |||
Media Center Edition | |||
Tablet PC Edition | |||
(or empty string) | |||
For Windows Vista: | |||
Ultimate Edition | |||
Home Premium Edition | |||
Home Basic Edition | |||
Enterprise Edition | |||
Business Edition | |||
Starter Edition | |||
(or empty string) | |||
--------------------------- | |||
GetVersion::WindowsVersion | |||
Pop $R0 | |||
Gets the Windows version x.x (e.g. 5.1). | |||
--------------------------- | |||
GetVersion::WindowsServerName | |||
Pop $R0 | |||
Gets the installed server name. This includes: | |||
Server | |||
Server 4.0 | |||
Server 4.0 Enterprise Edition | |||
Workstation | |||
Storage Server 2003 | |||
Server 2003 | |||
Server 2008 | |||
Cluster Server Edition | |||
Datacenter Edition | |||
Datacenter Edition for Itanium-based Systems | |||
Datacenter x64 Edition | |||
Enterprise Edition | |||
Enterprise Edition for Itanium-based Systems | |||
Enterprise x64 Edition | |||
Advanced Server | |||
Small Business Server | |||
Small Business Server Premium Edition | |||
Standard Edition | |||
Web Server Edition | |||
(or empty string) | |||
--------------------------- | |||
GetVersion::WindowsServicePack | |||
Pop $R0 | |||
Gets the installed service pack name (e.g. Service Pack 2). | |||
--------------------------- | |||
GetVersion::WindowsServicePackBuild | |||
Pop $R0 | |||
Gets the installed service pack build number (e.g. 2600). | |||
--------------------------- | |||
GetVersion::WindowsPlatformId | |||
Pop $R0 | |||
Gets the platform Id of the installed Windows | |||
(e.g. 1, 2, 3). | |||
--------------------------- | |||
GetVersion::WindowsPlatformArchitecture | |||
Pop $R0 | |||
Gets the architecture of the installed Windows | |||
(e.g. 32, 64). | |||
</highlight-nsis> | |||
== Example == | |||
<highlight-nsis> | |||
Name "GetVersion Example" | |||
OutFile "GetVersion.exe" | |||
ShowInstDetails show | |||
Page InstFiles | |||
Section | |||
GetVersion::WindowsName | |||
Pop $R0 | |||
DetailPrint "WindowsName:" | |||
DetailPrint " $R0" | |||
GetVersion::WindowsType | |||
Pop $R0 | |||
DetailPrint "WindowsType:" | |||
DetailPrint " $R0" | |||
GetVersion::WindowsVersion | |||
Pop $R0 | |||
DetailPrint "WindowsVersion:" | |||
DetailPrint " $R0" | |||
GetVersion::WindowsServerName | |||
Pop $R0 | |||
DetailPrint "WindowsServerName:" | |||
DetailPrint " $R0" | |||
GetVersion::WindowsPlatformId | |||
Pop $R0 | |||
DetailPrint "WindowsPlatformId:" | |||
DetailPrint " $R0" | |||
GetVersion::WindowsPlatformArchitecture | |||
Pop $R0 | |||
DetailPrint "WindowsPlatformArchitecture:" | |||
DetailPrint " $R0" | |||
GetVersion::WindowsServicePack | |||
Pop $R0 | |||
DetailPrint "WindowsServicePack:" | |||
DetailPrint " $R0" | |||
GetVersion::WindowsServicePackBuild | |||
Pop $R0 | |||
DetailPrint "WindowsServicePackBuild:" | |||
DetailPrint " $R0" | |||
SectionEnd | |||
</highlight-nsis> | |||
[[Category:Plugins]] | [[Category:Plugins]] |
Revision as of 16:29, 11 July 2008
Author: Afrow UK (talk, contrib) |
Description
A plugin that gets Windows version information (name, type, version, server name, service pack, service pack build).
Installation
Place GetVersion.dll in your NSIS\Plugins folder or simply extract all files in the Zip to NSIS\.
Changelog
v0.9 - 7 June 2008
- Major code clean up.
- All functions now return an empty string if GetVersionEx API call fails.
- Added Windows types and server names for Vista.
v0.8 - 22 August 2007
- Fixed WindowsType.
- Removed function to get IE version.
v0.7 - 16 July 2006
- WindowsName now returns simple names (not Windows #).
v0.6 - 11 April 2006
- Added support for Windows CE.
v0.5 - 11 March 2006
- Added support for Windows XP Media Center Edition (in WindowsType).
- Added support for Windows XP Tablet PC Edition (in WindowsType).
v0.4 - 10 March 2006
- Added WindowsPlatformId.
- Added WindowsPlatformArchitecture.
v0.3 - 12 February 2006
- Added support for Windows Vista and Longhorn Server.
v0.2 - 15 January 2006
- Added support for Windows x64.
- No support added for Windows Vista as yet (waiting for Microsoft to update their page for it!)
v0.1 - 16 July 2005
- First version.
Download
The Functions
GetVersion::WindowsName Pop $R0 Gets name of Windows. This includes: Vista Server Longhorn Server 2003 Server 2003 R2 XP XP x64 2000 CE NT ME 98 98 SE 95 95 OSR2 Win32s --------------------------- GetVersion::WindowsType Pop $R0 Gets type of Windows OS. For Windows NT: Workstation 4.0 For Windows XP: Home Edition Professional Professional x64 Edition Media Center Edition Tablet PC Edition (or empty string) For Windows Vista: Ultimate Edition Home Premium Edition Home Basic Edition Enterprise Edition Business Edition Starter Edition (or empty string) --------------------------- GetVersion::WindowsVersion Pop $R0 Gets the Windows version x.x (e.g. 5.1). --------------------------- GetVersion::WindowsServerName Pop $R0 Gets the installed server name. This includes: Server Server 4.0 Server 4.0 Enterprise Edition Workstation Storage Server 2003 Server 2003 Server 2008 Cluster Server Edition Datacenter Edition Datacenter Edition for Itanium-based Systems Datacenter x64 Edition Enterprise Edition Enterprise Edition for Itanium-based Systems Enterprise x64 Edition Advanced Server Small Business Server Small Business Server Premium Edition Standard Edition Web Server Edition (or empty string) --------------------------- GetVersion::WindowsServicePack Pop $R0 Gets the installed service pack name (e.g. Service Pack 2). --------------------------- GetVersion::WindowsServicePackBuild Pop $R0 Gets the installed service pack build number (e.g. 2600). --------------------------- GetVersion::WindowsPlatformId Pop $R0 Gets the platform Id of the installed Windows (e.g. 1, 2, 3). --------------------------- GetVersion::WindowsPlatformArchitecture Pop $R0 Gets the architecture of the installed Windows (e.g. 32, 64).
Example
Name "GetVersion Example" OutFile "GetVersion.exe" ShowInstDetails show Page InstFiles Section GetVersion::WindowsName Pop $R0 DetailPrint "WindowsName:" DetailPrint " $R0" GetVersion::WindowsType Pop $R0 DetailPrint "WindowsType:" DetailPrint " $R0" GetVersion::WindowsVersion Pop $R0 DetailPrint "WindowsVersion:" DetailPrint " $R0" GetVersion::WindowsServerName Pop $R0 DetailPrint "WindowsServerName:" DetailPrint " $R0" GetVersion::WindowsPlatformId Pop $R0 DetailPrint "WindowsPlatformId:" DetailPrint " $R0" GetVersion::WindowsPlatformArchitecture Pop $R0 DetailPrint "WindowsPlatformArchitecture:" DetailPrint " $R0" GetVersion::WindowsServicePack Pop $R0 DetailPrint "WindowsServicePack:" DetailPrint " $R0" GetVersion::WindowsServicePackBuild Pop $R0 DetailPrint "WindowsServicePackBuild:" DetailPrint " $R0" SectionEnd