4 #pragma GCC system_header
10 #define VS_FILE_INFO RT_VERSION
11 #define VS_VERSION_INFO 1
12 #define VS_USER_DEFINED 100
13 #define VS_FFI_SIGNATURE 0xFEEF04BD
14 #define VS_FFI_STRUCVERSION 0x10000
15 #define VS_FFI_FILEFLAGSMASK 0x3F
17 #define VS_FF_PRERELEASE 2
18 #define VS_FF_PATCHED 4
19 #define VS_FF_PRIVATEBUILD 8
20 #define VS_FF_INFOINFERRED 16
21 #define VS_FF_SPECIALBUILD 32
23 #define VOS_DOS 0x10000
24 #define VOS_OS216 0x20000
25 #define VOS_OS232 0x30000
26 #define VOS_NT 0x40000
28 #define VOS__WINDOWS16 1
31 #define VOS__WINDOWS32 4
32 #define VOS_DOS_WINDOWS16 0x10001
33 #define VOS_DOS_WINDOWS32 0x10004
34 #define VOS_OS216_PM16 0x20002
35 #define VOS_OS232_PM32 0x30003
36 #define VOS_NT_WINDOWS32 0x40004
43 #define VFT_STATIC_LIB 7
44 #define VFT2_UNKNOWN 0
45 #define VFT2_DRV_PRINTER 1
46 #define VFT2_DRV_KEYBOARD 2
47 #define VFT2_DRV_LANGUAGE 3
48 #define VFT2_DRV_DISPLAY 4
49 #define VFT2_DRV_MOUSE 5
50 #define VFT2_DRV_NETWORK 6
51 #define VFT2_DRV_SYSTEM 7
52 #define VFT2_DRV_INSTALLABLE 8
53 #define VFT2_DRV_SOUND 9
54 #define VFT2_DRV_COMM 10
55 #define VFT2_DRV_INPUTMETHOD 11
56 #define VFT2_DRV_VERSIONED_PRINTER 12
57 #define VFT2_FONT_RASTER 1
58 #define VFT2_FONT_VECTOR 2
59 #define VFT2_FONT_TRUETYPE 3
60 #define VFFF_ISSHAREDFILE 1
61 #define VFF_CURNEDEST 1
62 #define VFF_FILEINUSE 2
63 #define VFF_BUFFTOOSMALL 4
64 #define VIFF_FORCEINSTALL 1
65 #define VIFF_DONTDELETEOLD 2
66 #define VIF_TEMPFILE 1
67 #define VIF_MISMATCH 2
69 #define VIF_DIFFLANG 8
70 #define VIF_DIFFCODEPG 16
71 #define VIF_DIFFTYPE 32
72 #define VIF_WRITEPROT 64
73 #define VIF_FILEINUSE 128
74 #define VIF_OUTOFSPACE 256
75 #define VIF_ACCESSVIOLATION 512
76 #define VIF_SHARINGVIOLATION 1024
77 #define VIF_CANNOTCREATE 2048
78 #define VIF_CANNOTDELETE 4096
79 #define VIF_CANNOTRENAME 8192
80 #define VIF_CANNOTDELETECUR 16384
81 #define VIF_OUTOFMEMORY 32768
82 #define VIF_CANNOTREADSRC 65536
83 #define VIF_CANNOTREADDST 0x20000
84 #define VIF_BUFFTOOSMALL 0x40000
86 typedef struct tagVS_FIXEDFILEINFO
{
89 DWORD dwFileVersionMS
;
90 DWORD dwFileVersionLS
;
91 DWORD dwProductVersionMS
;
92 DWORD dwProductVersionLS
;
93 DWORD dwFileFlagsMask
;
101 DWORD WINAPI
VerFindFileA(DWORD
,LPCSTR
,LPCSTR
,LPCSTR
,LPSTR
,PUINT
,LPSTR
,PUINT
);
102 DWORD WINAPI
VerFindFileW(DWORD
,LPCWSTR
,LPCWSTR
,LPCWSTR
,LPWSTR
,PUINT
,LPWSTR
,PUINT
);
103 DWORD WINAPI
VerInstallFileA(DWORD
,LPCSTR
,LPCSTR
,LPCSTR
,LPCSTR
,LPCSTR
,LPSTR
,PUINT
);
104 DWORD WINAPI
VerInstallFileW(DWORD
,LPCWSTR
,LPCWSTR
,LPCWSTR
,LPCWSTR
,LPCWSTR
,LPWSTR
,PUINT
);
105 DWORD WINAPI
GetFileVersionInfoSizeA(LPCSTR
,PDWORD
);
106 DWORD WINAPI
GetFileVersionInfoSizeW(LPCWSTR
,PDWORD
);
107 BOOL WINAPI
GetFileVersionInfoA(LPCSTR
,DWORD
,DWORD
,PVOID
);
108 BOOL WINAPI
GetFileVersionInfoW(LPCWSTR
,DWORD
,DWORD
,PVOID
);
109 DWORD WINAPI
VerLanguageNameA(DWORD
,LPSTR
,DWORD
);
110 DWORD WINAPI
VerLanguageNameW(DWORD
,LPWSTR
,DWORD
);
111 BOOL WINAPI
VerQueryValueA(LPCVOID
,LPCSTR
,LPVOID
*,PUINT
);
112 BOOL WINAPI
VerQueryValueW(LPCVOID
,LPCWSTR
,LPVOID
*,PUINT
);
114 #define VerFindFile VerFindFileW
115 #define VerQueryValue VerQueryValueW
116 #define VerInstallFile VerInstallFileW
117 #define GetFileVersionInfoSize GetFileVersionInfoSizeW
118 #define GetFileVersionInfo GetFileVersionInfoW
119 #define VerLanguageName VerLanguageNameW
120 #define VerQueryValue VerQueryValueW
122 #define VerQueryValue VerQueryValueA
123 #define VerFindFile VerFindFileA
124 #define VerInstallFile VerInstallFileA
125 #define GetFileVersionInfoSize GetFileVersionInfoSizeA
126 #define GetFileVersionInfo GetFileVersionInfoA
127 #define VerLanguageName VerLanguageNameA
128 #define VerQueryValue VerQueryValueA