68 lines
1.5 KiB
C
68 lines
1.5 KiB
C
|
//+----------------------------------------------------------------------------
|
||
|
//
|
||
|
// File: cversion.h
|
||
|
//
|
||
|
// Module: CMSETUP.LIB
|
||
|
//
|
||
|
// Synopsis: Definition of CVersion, a utility class that wraps up the
|
||
|
// functionality of detecting the version of a given module.
|
||
|
//
|
||
|
// Copyright (c) 1998-1999 Microsoft Corporation
|
||
|
//
|
||
|
// Author: quintinb Created 09/14/98
|
||
|
//
|
||
|
//+----------------------------------------------------------------------------
|
||
|
#ifndef __CVERSION_H
|
||
|
#define __CVERSION_H
|
||
|
|
||
|
#include <windows.h>
|
||
|
#include <tchar.h>
|
||
|
|
||
|
const int c_iShiftAmount = ((sizeof(DWORD)/2) * 8);
|
||
|
|
||
|
class CVersion
|
||
|
{
|
||
|
public: // Public Methods
|
||
|
CVersion(LPTSTR szFile);
|
||
|
CVersion();
|
||
|
~CVersion();
|
||
|
|
||
|
BOOL IsPresent();
|
||
|
BOOL GetBuildNumberString(LPTSTR szStr);
|
||
|
BOOL GetVersionString(LPTSTR szStr);
|
||
|
BOOL GetFilePath(LPTSTR szStr);
|
||
|
|
||
|
DWORD GetVersionNumber(); // return Major Version in Hiword, Minor in Loword
|
||
|
DWORD GetBuildAndQfeNumber(); // return Build number in Hiword, QFE in Loword
|
||
|
DWORD GetMajorVersionNumber();
|
||
|
DWORD GetMinorVersionNumber();
|
||
|
DWORD GetBuildNumber();
|
||
|
DWORD GetQfeNumber();
|
||
|
DWORD GetLCID();
|
||
|
|
||
|
protected:
|
||
|
|
||
|
//
|
||
|
// Protected Methods
|
||
|
//
|
||
|
void Init();
|
||
|
|
||
|
//
|
||
|
// Member Variables
|
||
|
//
|
||
|
TCHAR m_szPath[MAX_PATH+1];
|
||
|
DWORD m_dwVersion;
|
||
|
DWORD m_dwBuild;
|
||
|
DWORD m_dwLCID;
|
||
|
BOOL m_bIsPresent;
|
||
|
|
||
|
};
|
||
|
|
||
|
//
|
||
|
// This function doesn't belong to this class but makes the GetLCID function more useful, thus
|
||
|
// I have included it here.
|
||
|
//
|
||
|
BOOL ArePrimaryLangIDsEqual(DWORD dwLCID1, DWORD dwLCID2);
|
||
|
|
||
|
#endif // __CVERSION_H
|