include: Rename cor.h to cor.idl.
[wine] / include / winver.h
CommitLineData
f981c6cb 1/* Definitions for the VERsion infolibrary (VER.DLL)
9a624916 2 *
f981c6cb 3 * Copyright 1996 Marcus Meissner
0799c1a7
AJ
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, write to the Free Software
360a3f91 17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
f981c6cb
PQ
18 */
19
17822f45
MV
20#ifndef __WINE_WINVER_H
21#define __WINE_WINVER_H
22
14da7b1c
PS
23#ifdef __cplusplus
24extern "C" {
25#endif /* defined(__cplusplus) */
26
f981c6cb 27/* resource ids for different version infos */
f981c6cb
PQ
28#define VS_FILE_INFO 16
29#define VS_VERSION_INFO 1
3e88da11 30#define VS_USER_DEFINED 100
f981c6cb
PQ
31
32#define VS_FFI_SIGNATURE 0xfeef04bdL /* FileInfo Magic */
33#define VS_FFI_STRUCVERSION 0x00010000L /* struc version 1.0 */
34#define VS_FFI_FILEFLAGSMASK 0x0000003fL /* valid flags */
35
36/* VS_VERSION.dwFileFlags */
37#define VS_FF_DEBUG 0x01L
38#define VS_FF_PRERELEASE 0x02L
39#define VS_FF_PATCHED 0x04L
40#define VS_FF_PRIVATEBUILD 0x08L
41#define VS_FF_INFOINFERRED 0x10L
42#define VS_FF_SPECIALBUILD 0x20L
43
44/* VS_VERSION.dwFileOS */
45
46/* major os version */
47#define VOS_UNKNOWN 0x00000000L
48#define VOS_DOS 0x00010000L
49#define VOS_OS216 0x00020000L
50#define VOS_OS232 0x00030000L
51#define VOS_NT 0x00040000L
52
53/* minor os version */
54#define VOS__BASE 0x00000000L
55#define VOS__WINDOWS16 0x00000001L
56#define VOS__PM16 0x00000002L
57#define VOS__PM32 0x00000003L
58#define VOS__WINDOWS32 0x00000004L
59
60/* possible versions */
61#define VOS_DOS_WINDOWS16 (VOS_DOS|VOS__WINDOWS16)
62#define VOS_DOS_WINDOWS32 (VOS_DOS|VOS__WINDOWS32)
63#define VOS_OS216_PM16 (VOS_OS216|VOS__PM16)
64#define VOS_OS232_PM32 (VOS_OS232|VOS__PM32)
65#define VOS_NT_WINDOWS32 (VOS_NT|VOS__WINDOWS32)
66
67/* VS_VERSION.dwFileType */
68#define VFT_UNKNOWN 0x00000000L
69#define VFT_APP 0x00000001L
70#define VFT_DLL 0x00000002L
71#define VFT_DRV 0x00000003L
72#define VFT_FONT 0x00000004L
73#define VFT_VXD 0x00000005L
74/* ??one type missing?? 0x00000006L -Marcus */
75#define VFT_STATIC_LIB 0x00000007L
76
77/* VS_VERSION.dwFileSubtype for VFT_DRV */
78#define VFT2_UNKNOWN 0x00000000L
79#define VFT2_DRV_PRINTER 0x00000001L
80#define VFT2_DRV_KEYBOARD 0x00000002L
81#define VFT2_DRV_LANGUAGE 0x00000003L
82#define VFT2_DRV_DISPLAY 0x00000004L
83#define VFT2_DRV_MOUSE 0x00000005L
84#define VFT2_DRV_NETWORK 0x00000006L
85#define VFT2_DRV_SYSTEM 0x00000007L
86#define VFT2_DRV_INSTALLABLE 0x00000008L
87#define VFT2_DRV_SOUND 0x00000009L
88#define VFT2_DRV_COMM 0x0000000aL
89#define VFT2_DRV_INPUTMETHOD 0x0000000bL
625f5862 90#define VFT2_DRV_VERSIONED_PRINTER 0x0000000cL
f981c6cb
PQ
91
92/* VS_VERSION.dwFileSubtype for VFT_FONT */
93#define VFT2_FONT_RASTER 0x00000001L
94#define VFT2_FONT_VECTOR 0x00000002L
95#define VFT2_FONT_TRUETYPE 0x00000003L
96
97/* VerFindFile Flags */
98 /* input */
99#define VFFF_ISSHAREDFILE 0x0001
100
101 /* output (returned) */
102#define VFF_CURNEDEST 0x0001
103#define VFF_FILEINUSE 0x0002
104#define VFF_BUFFTOOSMALL 0x0004
105
106/* VerInstallFile Flags */
107 /* input */
108#define VIFF_FORCEINSTALL 0x0001
109#define VIFF_DONTDELETEOLD 0x0002
110
111 /* output (return) */
112#define VIF_TEMPFILE 0x00000001L
113#define VIF_MISMATCH 0x00000002L
114#define VIF_SRCOLD 0x00000004L
115#define VIF_DIFFLANG 0x00000008L
116#define VIF_DIFFCODEPG 0x00000010L
117#define VIF_DIFFTYPE 0x00000020L
118#define VIF_WRITEPROT 0x00000040L
119#define VIF_FILEINUSE 0x00000080L
120#define VIF_OUTOFSPACE 0x00000100L
121#define VIF_ACCESSVIOLATION 0x00000200L
122#define VIF_SHARINGVIOLATION 0x00000400L
123#define VIF_CANNOTCREATE 0x00000800L
124#define VIF_CANNOTDELETE 0x00001000L
125#define VIF_CANNOTRENAME 0x00002000L
126#define VIF_CANNOTDELETECUR 0x00004000L
127#define VIF_OUTOFMEMORY 0x00008000L
128#define VIF_CANNOTREADSRC 0x00010000L
129#define VIF_CANNOTREADDST 0x00020000L
130#define VIF_BUFFTOOSMALL 0x00040000L
131
132typedef struct tagVS_FIXEDFILEINFO {
133 DWORD dwSignature;
134 DWORD dwStrucVersion;
135 DWORD dwFileVersionMS;
136 DWORD dwFileVersionLS;
137 DWORD dwProductVersionMS;
138 DWORD dwProductVersionLS;
139 DWORD dwFileFlagsMask;
140 DWORD dwFileFlags;
141 DWORD dwFileOS;
142 DWORD dwFileType;
143 DWORD dwFileSubtype;
144 DWORD dwFileDateMS;
145 DWORD dwFileDateLS;
146} VS_FIXEDFILEINFO;
147
148
149#ifndef RC_INVOKED
150
151/* function prototypes */
152
015dc79c
FG
153DWORD WINAPI VerFindFileA(DWORD,LPCSTR,LPCSTR,LPCSTR,LPSTR,PUINT,LPSTR,PUINT);
154DWORD WINAPI VerFindFileW(DWORD,LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,PUINT,LPWSTR,PUINT);
17822f45 155#define VerFindFile WINELIB_NAME_AW(VerFindFile)
015dc79c
FG
156DWORD WINAPI VerInstallFileA(DWORD,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPSTR,PUINT);
157DWORD WINAPI VerInstallFileW(DWORD,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,PUINT);
17822f45 158#define VerInstallFile WINELIB_NAME_AW(VerInstallFile)
015dc79c
FG
159DWORD WINAPI VerLanguageNameA(DWORD,LPSTR,DWORD);
160DWORD WINAPI VerLanguageNameW(DWORD,LPWSTR,DWORD);
3467dab3 161#define VerLanguageName WINELIB_NAME_AW(VerLanguageName)
015dc79c
FG
162BOOL WINAPI VerQueryValueA(LPCVOID,LPCSTR,LPVOID*,PUINT);
163BOOL WINAPI VerQueryValueW(LPCVOID,LPCWSTR,LPVOID*,PUINT);
17822f45 164#define VerQueryValue WINELIB_NAME_AW(VerQueryValue)
a3960292
AJ
165DWORD WINAPI GetFileVersionInfoSizeA(LPCSTR,LPDWORD);
166DWORD WINAPI GetFileVersionInfoSizeW(LPCWSTR,LPDWORD);
17822f45 167#define GetFileVersionInfoSize WINELIB_NAME_AW(GetFileVersionInfoSize)
07b6e6e6
DT
168BOOL WINAPI GetFileVersionInfoA(LPCSTR,DWORD,DWORD,LPVOID);
169BOOL WINAPI GetFileVersionInfoW(LPCWSTR,DWORD,DWORD,LPVOID);
17822f45
MV
170#define GetFileVersionInfo WINELIB_NAME_AW(GetFileVersionInfo)
171
f981c6cb
PQ
172/* 20 GETFILEVERSIONINFORAW */
173
f981c6cb
PQ
174#endif /* RC_INVOKED */
175
14da7b1c
PS
176#ifdef __cplusplus
177} /* extern "C" */
178#endif /* defined(__cplusplus) */
179
17822f45 180#endif /* __WINE_WINVER_H */