1 /* $NetBSD: VersionInfo.h,v 1.3 2014/12/10 04:37:55 christos Exp $ */ 2 3 // VersionInfo.h: interface for the CVersionInfo class. 4 // 5 ////////////////////////////////////////////////////////////////////// 6 7 #if !defined(AFX_VERSIONINFO_H__F82E9FF3_5298_11D4_AB87_00C04F789BA0__INCLUDED_) 8 #define AFX_VERSIONINFO_H__F82E9FF3_5298_11D4_AB87_00C04F789BA0__INCLUDED_ 9 10 #if _MSC_VER > 1000 11 #pragma once 12 #endif // _MSC_VER > 1000 13 14 class CVersionInfo 15 { 16 public: 17 CVersionInfo(CString filename); 18 virtual ~CVersionInfo(); IsValid()19 BOOL IsValid() {return m_isValid;} GetStatus()20 DWORD GetStatus() {return m_status;} 21 22 BOOL CopyFileCheckVersion(CVersionInfo &originalFile); 23 BOOL CopyFileNoVersion(CVersionInfo &originalFile); 24 GetFilename()25 const CString &GetFilename() {return m_filename;} 26 27 // Extract the elements of the file's string info block 28 CString GetFileVersionString(); 29 CString GetProductVersionString(); 30 CString GetComments(); 31 CString GetFileDescription(); 32 CString GetInternalName(); 33 CString GetLegalCopyright(); 34 CString GetLegalTrademarks(); 35 CString GetOriginalFileName(); 36 CString GetProductName(); 37 CString GetSpecialBuildString(); 38 CString GetPrivateBuildString(); 39 CString GetCompanyName(); 40 41 42 // Extract the elements of the file's VS_FIXEDFILEINFO block 43 _int64 GetFileVersion(); 44 _int64 GetProductVersion(); 45 _int64 GetFileDate(); 46 47 DWORD GetFileFlagMask(); 48 DWORD GetFileFlags(); 49 DWORD GetFileOS(); 50 DWORD GetFileType(); 51 DWORD GetFileSubType(); 52 53 private: 54 CString m_filename; 55 BOOL m_isValid; 56 LPVOID m_versionInfo; 57 VS_FIXEDFILEINFO *m_fixedInfo; 58 DWORD m_codePage; 59 DWORD m_status; 60 61 CString QueryStringValue(CString value); 62 }; 63 64 #endif // !defined(AFX_VERSIONINFO_H__F82E9FF3_5298_11D4_AB87_00C04F789BA0__INCLUDED_) 65