|
// MiniVersion.h Version 1.1
//
// Author: Hans Dietrich
// hdietrich2@hotmail.com
//
// This software is released into the public domain.
// You are free to use it in any way you like, except
// that you may not sell this source code.
//
// This software is provided "as is" with no expressed
// or implied warranty. I accept no liability for any
// damage or loss of business that this software may cause.
//
///////////////////////////////////////////////////////////////////////////////
#ifndef MINIVERSION_H
#define MINIVERSION_H
class CMiniVersion
{
// constructors
public:
CMiniVersion(LPCTSTR lpszPath = NULL);
BOOL Init();
void Release();
// operations
public:
// attributes
public:
// fixed info
BOOL GetFileVersion(WORD *pwVersion);
BOOL GetProductVersion(WORD* pwVersion);
BOOL GetFileFlags(DWORD& rdwFlags);
BOOL GetFileOS(DWORD& rdwOS);
BOOL GetFileType(DWORD& rdwType);
BOOL GetFileSubtype(DWORD& rdwType);
// string info
BOOL GetCompanyName(LPTSTR lpszCompanyName, int nSize);
BOOL GetFileDescription(LPTSTR lpszFileDescription, int nSize);
BOOL GetProductName(LPTSTR lpszProductName, int nSize);
// implementation
protected:
BOOL GetFixedInfo(VS_FIXEDFILEINFO& rFixedInfo);
BOOL GetStringInfo(LPCTSTR lpszKey, LPTSTR lpszValue);
BYTE* m_pData;
DWORD m_dwHandle;
WORD m_wFileVersion[4];
WORD m_wProductVersion[4];
DWORD m_dwFileFlags;
DWORD m_dwFileOS;
DWORD m_dwFileType;
DWORD m_dwFileSubtype;
TCHAR m_szPath[MAX_PATH*2];
TCHAR m_szCompanyName[MAX_PATH*2];
TCHAR m_szProductName[MAX_PATH*2];
TCHAR m_szFileDescription[MAX_PATH*2];
};
#endif
///////////////////////////////////////////////////////////////////////////////
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
A compiler warns of bogasity, ignore it at your peril. Unless you've done the compiler's job yourself, don't criticize it.