Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
GrayLib::cFileVer Class Reference

#include <cFileVer.h>

Inheritance diagram for GrayLib::cFileVer:
Gray::IIniObjectWriteN

Public Types

enum  P_TYPE_ { P_QTY = 6 }
 

Public Member Functions

 cFileVer (void)
 
virtual ~cFileVer (void)
 
HRESULT ReadFileVer (const FILECHAR_t *pszFilePath)
 
virtual HRESULT PropSetN (IPROPIDX_t ePropIdx, const char *pszValue)
 
 UNITTEST_FRIEND (cFileVer)
 

Static Public Member Functions

static UINT32 GRAYCALL MakeVersionNum (const char *pszFileVersion, size_t iBytes=sizeof(UINT32))
 

Public Attributes

cStringF m_sFilePath
 full path for the file. More...
 
cStringA m_sCompanyName
 "CompanyName", // GRAY_COMPANY More...
 
cStringA m_sFileDescription
 "FileDescription", More...
 
cStringA m_sFileVersion
 "FileVersion", // GRAY_VERSION_S More...
 
cStringA m_sProductName
 "ProductName", More...
 
cStringA m_sProdVersion
 "ProductVersion", // GRAY_VERSION_S More...
 
cStringA m_sLegalCopyright
 "LegalCopyright", // GRAY_COPYRIGHT More...
 
DWORD m_dwFileVersionMS
 
DWORD m_dwFileVersionLS
 

Static Public Attributes

static const char *const k_Props [P_QTY+1]
 

Detailed Description

Read version info/metadata from a single PE type file (DLL or EXE). (if it has any) Not the same as cFileStatus or cOSModule footprint info.

Note
use cFileDigSig to check for secure signed files. RSA+SHA1 signature. _WIN32 Links with 'Version.lib'

Member Enumeration Documentation

◆ P_TYPE_

Enumerator
P_QTY 

Constructor & Destructor Documentation

◆ cFileVer()

GrayLib::cFileVer::cFileVer ( void  )

◆ ~cFileVer()

GrayLib::cFileVer::~cFileVer ( void  )
virtual

Member Function Documentation

◆ MakeVersionNum()

UINT32 GRAYCALL GrayLib::cFileVer::MakeVersionNum ( const char *  pszFileVersion,
size_t  iBytes = sizeof(UINT32) 
)
static

convert a version string to a number. in the form "1.2.3.4" or "1,2,3,4". One byte per digit.

◆ PropSetN()

HRESULT GrayLib::cFileVer::PropSetN ( IPROPIDX_t  ePropIdx,
const char *  pszValue 
)
virtual

IIniObjectWriteN

Implements Gray::IIniObjectWriteN.

◆ ReadFileVer()

HRESULT GrayLib::cFileVer::ReadFileVer ( const FILECHAR_t pszFilePath)

Read the version block for a DLL or EXE.

Returns
ERROR_RESOURCE_DATA_NOT_FOUND = no version block.

◆ UNITTEST_FRIEND()

GrayLib::cFileVer::UNITTEST_FRIEND ( cFileVer  )

Member Data Documentation

◆ k_Props

const char *const GrayLib::cFileVer::k_Props
static
Initial value:
=
{
"CompanyName",
"FileDescription",
"FileVersion",
"ProductName",
"ProductVersion",
"LegalCopyright",
nullptr,
}

◆ m_dwFileVersionLS

DWORD GrayLib::cFileVer::m_dwFileVersionLS

◆ m_dwFileVersionMS

DWORD GrayLib::cFileVer::m_dwFileVersionMS

◆ m_sCompanyName

cStringA GrayLib::cFileVer::m_sCompanyName

"CompanyName", // GRAY_COMPANY

◆ m_sFileDescription

cStringA GrayLib::cFileVer::m_sFileDescription

"FileDescription",

◆ m_sFilePath

cStringF GrayLib::cFileVer::m_sFilePath

full path for the file.

◆ m_sFileVersion

cStringA GrayLib::cFileVer::m_sFileVersion

"FileVersion", // GRAY_VERSION_S

◆ m_sLegalCopyright

cStringA GrayLib::cFileVer::m_sLegalCopyright

"LegalCopyright", // GRAY_COPYRIGHT

◆ m_sProductName

cStringA GrayLib::cFileVer::m_sProductName

"ProductName",

◆ m_sProdVersion

cStringA GrayLib::cFileVer::m_sProdVersion

"ProductVersion", // GRAY_VERSION_S


The documentation for this class was generated from the following files: