blob: b5525dd578e5fe2ab5a4f67a6aefb466faf37de4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
// ResourceVersionInfo.h: interface for the CResourceVersionInfo class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_RESOURCEVERSIONINFO_H__80439ADA_49DA_4623_8DA9_1663FF356E76__INCLUDED_)
#define AFX_RESOURCEVERSIONINFO_H__80439ADA_49DA_4623_8DA9_1663FF356E76__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "exehead/config.h"
#ifdef NSIS_SUPPORT_VERSION_INFO
#include "Platform.h"
#include "strlist.h"
#ifndef _WIN32
// all definitions for non Win32 platforms were taken from MinGW's free Win32 library
typedef struct tagVS_FIXEDFILEINFO {
DWORD dwSignature;
DWORD dwStrucVersion;
DWORD dwFileVersionMS;
DWORD dwFileVersionLS;
DWORD dwProductVersionMS;
DWORD dwProductVersionLS;
DWORD dwFileFlagsMask;
DWORD dwFileFlags;
DWORD dwFileOS;
DWORD dwFileType;
DWORD dwFileSubtype;
DWORD dwFileDateMS;
DWORD dwFileDateLS;
} VS_FIXEDFILEINFO;
#endif
struct version_string_list;
class CVersionStrigList : public SortedStringListND<struct version_string_list>
{
public:
~CVersionStrigList();
int add(LANGID langid, int codepage);
LANGID get_lang(int idx);
int get_codepage(int idx);
DefineList* get_strings(int idx);
int find(LANGID lang_id, int codepage);
int getlen();
int getnum();
};
/////////////////////////////////////////////////////////////////////////////////////////////
class CResourceVersionInfo
{
VS_FIXEDFILEINFO m_FixedInfo;
CVersionStrigList m_ChildStringLists;
public:
CResourceVersionInfo();
virtual ~CResourceVersionInfo();
int SetKeyValue(LANGID lang_id, int codepage, char* AKeyName, char* AValue);
void SetFileFlags(int Value);
void SetFileVersion(int HighPart, int LowPart);
void SetProductVersion(int HighPart, int LowPart);
void ExportToStream(GrowBuf &strm, int Index);
int GetStringTablesCount();
LANGID GetLangID(int Index);
int GetCodePage(int Index);
char *FindKey(LANGID LangID, int codepage, char *pKeyName);
};
#endif
#endif // !defined(AFX_RESOURCEVERSIONINFO_H__80439ADA_49DA_4623_8DA9_1663FF356E76__INCLUDED_)
|