⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dtwinver.htm

📁 DtWinVer is a C++ class which provides a comprehensive method to determine which OS the program that
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>DtWinVer v1.78</title>
<link rel="stylesheet" type="text/css" href="naughter.css">
</head>

<body bgcolor="#FFFFFF">

<h2 align="left">
<img src="dtwinver.gif" width="67" height="58"
alt="DTWinVer Logo">DtWinVer v1.78</h2>

<p>&nbsp;</p>

<table>
<TBODY>
  <tr>
    <td><a href="#Features">Features</a></td>
  </tr>
  <tr>
    <td><a href="#Copyright">Copyright</a></td>
  </tr>
  <tr>
    <td><a href="#History">History</a></td>
  </tr>
  <tr>
    <td><a href="#API">API Reference</a></td>
  </tr>
  <tr>
    <td><a href="#Notes">Notes</a></td>
  </tr>
  <tr>
    <td><a href="#Contact">Contacting the Author</a></td>
  </tr>
</TBODY>
</table>

<p>&nbsp;</p>

<p>&nbsp;</p>

<p>&nbsp;</p>

<h2><a name="Features"></a>Features</h2>

<p>DtWinVer is a C++ class which 
provides a comprehensive method to determine which OS the program that calls it 
is running on. All methods it uses are fully documented on various articles on 
MSDN. The routine provides the emulated OS as well as the underlying OS. e.g to a DOS program Windows 95 looks like MS-DOS 7.0. A full list of the OS&#8217;s 
it can detect are:<ul>
  <li>DOS</li>
  <li>Windows 3.0</li>
  <li>Windows 3.1</li>
  <li>Windows 3.11</li>
  <li>Windows for Workgroups</li>
  <li>Win32s (if you can call this 
	an OS &lt;g&gt;)</li>
  <li>Windows CE 1.0&nbsp;</li>
  <li>Windows CE 2.0</li>
  <li>Windows CE 2.1</li>
  <li>Windows CE 2.11</li>
  <li>Windows CE 3.0</li>
  <li>Windows CE.Net</li>
  <li>Windows CE 5</li>
  <li>Windows 95 Gold </li>
  <li>Windows 95 Service Pack 1</li>
  <li>Windows 95B aka OEM Service 
	Release 2[.1]</li>
  <li>Windows 95C aka OEM Service 
	Release 2.5</li>
  <li>Windows 98</li>
  <li>Windows 98 Service Pack 1</li>
  <li>Windows 98 Second Edition</li>
  <li>Windows Millennium Edition</li>
  <li>NT 3.1</li>
  <li>NT 3.5</li>
  <li>NT 3.51</li>
  <li>All flavours of NT, 2000 and 
	XP Service packs</li>
  <li>NT 4.0</li>
  <li>NT Workstation, Server, PDC, 
	BDC, Datacenter, Enterprise</li>
  <li>Windows 2000</li>
  <li>Windows 2000 Professional, 
	Server, Domain Controller, Datacenter and Advanced Server</li>
  <li>Windows Terminal Services and 
	Back Office</li>
  <li>  Windows XP Starter Edition, XP Personal &amp; XP 
	Professional</li>
  <li> Windows Server 2003, Windows 
	Server 2003 (Web Edition), Windows Server 2003 Domain Controller, 
	Datacenter, Enterprise Server &amp; 64 bit Editions</li>
  <li> Windows Server 2003 R2, 
	Windows Server 2003 R2 (Web Edition), Windows Server 2003 R2 Domain 
	Controller, Datacenter, Enterprise Server &amp; 64 bit Editions</li>
  <li>Embedded Windows NT / 2000 / XP.</li>
  <li>XP Media Center Edition</li>
  <li>Windows XP Tablet PC Edition</li>
  <li>Windows Vista (All SKU's including Starter Edition, Home Basic N, Home 
	Basic, Home Premium, Home Premium N, Business N, Business, Enterprise N, Enterprise, Ultimate 
	N, Ultimate).</li>
  <li>Windows Server 2008, Windows 
	Server 2008 (Web Edition), Windows Server 2008 DataCenter, Enterprise Server, 
	Core Server, Hyper-V &amp; 64 bit Editions</li>
	<li>Windows Essential Business Server Management, Messaging and Security 
	Server</li>
	<li>Windows Storage Enterprise, Express, Standard and Workgroup Server</li>
	<li>Windows Server 2003 &amp; 2008 Computer Cluster Edition</li>
	<li>Windows Cluster Server</li>
	<li>Windows Home Server</li>
	<li>Windows &quot;Security Application&quot; mode</li>
	<li>BackOffice, Small Business Server &amp; Small Business Server Premium installed</li>
	<li>Windows 7</li>
</ul>

<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>

<p>Some of the possible scenarios it 
can report on are: 

<ul>
  <li>&quot;You are running an emulated 
	DOS v5.50 On&nbsp; Windows 2000 Server Build 2195 Service Pack 2&quot;</li>
  <li>&quot;You are running an emulated 
	Windows 3.95 on Windows 95 v4.0 Build 950&quot;</li>
  <li>&quot;You are running Windows for 
	Workgroups on DOS v6.22&quot;</li>
  <li>&quot;You are running NT Server 
	v3.51&quot;</li>
  <li>&quot;You are running this 32 bit 
	process on the WOW64 layer of 64 bit Windows&quot;</li>
  <li>&quot;You are running an 
	application on Windows NT Terminal Server.</li>
  <li>This NT machine is acting as a 
	stand alone server, primary domain controller or backup domain controller.</li>
</ul>

<p>&nbsp;</p>

<p>&nbsp;</p>

<p>&nbsp;</p>

<h2><b><a name="Copyright"></a>Copyright</b></h2>
<ul>
  <li>You are allowed to include the source code in
    any product (commercial, shareware, freeware or otherwise) when your product
    is released in binary form.</li>
  <li>You are allowed to modify the source code in
    any way you want except you cannot modify the copyright details at the top
    of each module.</li>
  <li>If you want to distribute source code with
    your application, then you are only allowed to distribute versions released
    by the author. This is to maintain a single distribution point for the
    source code.</li>
</ul>

<p>&nbsp;</p>

<p>&nbsp;</p>

<p>&nbsp;</p>

<h2><a name="History"></a>History</h2>

<p><strong>v1.1 (8 May 1997)</strong>

<ul>
  <li>Fix to remove Unicode and 
	TCHAR code when being compiled for Win16.</li>
</ul>

<p><strong>v1.2 (13 September 1998)</strong> 

<ul>
  <li>Updated the sample app plus 
	the DtWinVer code to explicitly support Windows 98.</li>
</ul>

<p><strong>v1.3 (22 June 1998)</strong> 

<ul>
  <li>UNICODE enabled the code.</li>
  <li>Removed need for the dwOSVersionInfoSize variable.</li>
  <li>Added support for detecting Build Number of 95 and 98 from DOS code path.</li>
  <li>Now ships as standard with VC 5 workspace files.</li>
  <li>Added explicit support for Windows 95 SP 1.</li>
  <li>Added explicit support for Windows 95 OSR 2.</li>
  <li>Added explicit support for Windows 98 Second Edition.</li>
  <li>Added explicit support for Windows 2000.</li>
  <li>Added explicit support for Windows CE.</li>
  <li>Added explicit support for Windows Terminal Server's.</li>
  <li>  Added explicit support for NT Stand Alone Server's.</li>
  <li>Added explicit support for NT Primary Domain Controller's.</li>
  <li>Added explicit support for NT Backup Domain Controller's.</li>
</ul>

<p><strong>v1.31 (23 July 1999)</strong> 

<ul>
  <li> Tested out support for Windows 98 SE, minor changes required</li>
</ul>

<p><strong>v1.32 (26 July 1999)</strong> 

<ul>
  <li>Added explicit support for Windows 98 SP 1.</li>
</ul>

<p><strong>v1.33 (28 July 1999)</strong> 

<ul>
  <li>Fixed a problem when application is build in non-huge/large memory model 
	in Win16.</li>
  <li> Added explicit support for returning NT and Win9x service pack 
	information from Win32 and Win16 code paths.</li>
  <li> Updated test program to not bother reporting on any info which does not 
	exist. e.g. if there is no service pack installed, then we don't bother 
	displaying any info about service packs.</li>
  <li> Added explicit support for NT Enterprise Edition.</li>
</ul>

<p><strong>v1.34 (2 February 2000)</strong> 

<ul>
  <li>Fixed a minor copy and paste bug in the test program.</li>
</ul>

<p><strong>v1.35 (30 June 2000)</strong> 

<ul>
  <li> Added explicit support for Windows Millennium Edition</li>
</ul>

<p><strong>v1.4 (29 January 2001)</strong> 

<ul>
  <li>Added explicit support for XP Personal</li>
  <li>Added explicit support for XP Professional</li>
  <li>Added explicit support for XP Server</li>
  <li>Added explicit support for XP Advanced Server</li>
  <li>Added explicit support for XP Datacenter</li>
  <li>Added explicit support for XP 64 bit (all flavours)</li>
  <li>Made all the code into a C++ class called COSVersion</li>
  <li>Rewrote all the generic thunk code to be easier to follow</li>
  <li>Generic thunk code now uses CallProcEx32W</li>
  <li>Added explicit support for BackOffice Small Business Edition</li>
  <li>Added explicit support for Terminal Services</li>
  <li>16 bit code path now can determine ProductSuite and ProductType type thro 
	additional generic thunk code</li>
  <li>Provided a 64 bit test binary and make batch file (make64.bat) for those 
	lucky enough to have an Itanium processor and a beta of 64 bit Windows XP.</li>
  <li>Provided a Embedded C++ workspace and X86 Release binary.</li>
  <li>Updated copyright information</li>
</ul>

<p><strong>v1.41 (10 February 2001)</strong> 

<ul>
  <li>Updated function names etc following MS decision to call Whistler &quot;Windows 
	XP&quot;.</li>
</ul>

<p><strong>v1.42 (10 October 2001)</strong> 

<ul>
  <li> Added code to 32 bit code path to detect if we are being run under 64 bit 
	Windows. Also updated the sample app to distinguish between emulated 64 bit 
	and underlying 64 bit.</li>
  <li>Updated the sample app to call XP Server its proper name which will be 
	&quot;Windows.NET Server&quot;</li>
</ul>

<p><strong>v1.5 (13 December 2001)</strong> 

<ul>
  <li> Major upgrade. Now 16 bit DOS path can return as much information as 
	native Win32 code. This is achieved by spawning off the Win32 utility 
	WriteVer with a special command line option. Please note that if you intend 
	deploying dtwinver then you must now ship the writever.exe file in addition 
	to linking in the dtwinver code into your application. Also this utility 
	needs to be in the path or current directory when the dtwinver code is 
	executing. Thanks to Chaz Angell for prompted me into finding a solution for 
	this last major item missing in dtwinver.</li>
</ul>

<p><strong>23 March 2002</strong> 

<ul>
  <li> Updated Win32 and Win64 apps to have version info in them. No changes 
	have been made to the main dtwinver code.</li>
</ul>

<p><strong>v1.6 (30 August 2002)</strong> 

<ul>
  <li> Provided an update CE workspace to work correctly in eMbedded Visual C++ 
	v3. All build configurations for eVC 3 have also been provided.</li>
  <li>Optimized the usage of _tcscat and _tcscpy in the test app which comes 
	with Dtwinver.cpp</li>
  <li>OEM Info string and Platform Type string is now returned for CE code path</li>
  <li>Fixed display of minor version number for example Windows.Net is version 
	number v5.20 but should be shown as 5.2 to be consistent with what the 
	native ver command displays</li>
  <li>Provided a new CE workspace to work correctly in eMbedded Visual C++ v4. 
	All build configurations for eVC 4 have also been provided.</li>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -