source: trunk/src/version/version.h@ 201

Last change on this file since 201 was 95, checked in by phaller, 26 years ago

Add: added cvs variable $Id$ to source files.

File size: 6.0 KB
Line 
1/* $Id: version.h,v 1.2 1999-06-10 16:29:00 phaller Exp $ */
2
3/* Definitions for the VERsion infolibrary (VER.DLL)
4 *
5 * Copyright 1996 Marcus Meissner
6 */
7
8#ifndef __ODIN_VERSION_H
9#define __ODIN_VERSION_H
10
11#include "windef.h"
12
13/* resource ids for different version infos */
14/* These are internal resources for win16, but simple numbers in win32 */
15/* All win32 defines should be moved to winver.h */
16#define VS_FILE_INFO16 MAKEINTRESOURCE16(16)
17#define VS_VERSION_INFO16 MAKEINTRESOURCE16(1)
18#define VS_USER_INFO16 MAKEINTRESOURCE16(100)
19
20#define VS_FILE_INFO 16
21#define VS_VERSION_INFO 1
22#define VS_USER_INFO 100
23
24#define VS_FFI_SIGNATURE 0xfeef04bdL /* FileInfo Magic */
25#define VS_FFI_STRUCVERSION 0x00010000L /* struc version 1.0 */
26#define VS_FFI_FILEFLAGSMASK 0x0000003fL /* valid flags */
27
28/* VS_VERSION.dwFileFlags */
29#define VS_FF_DEBUG 0x01L
30#define VS_FF_PRERELEASE 0x02L
31#define VS_FF_PATCHED 0x04L
32#define VS_FF_PRIVATEBUILD 0x08L
33#define VS_FF_INFOINFERRED 0x10L
34#define VS_FF_SPECIALBUILD 0x20L
35
36/* VS_VERSION.dwFileOS */
37
38/* major os version */
39#define VOS_UNKNOWN 0x00000000L
40#define VOS_DOS 0x00010000L
41#define VOS_OS216 0x00020000L
42#define VOS_OS232 0x00030000L
43#define VOS_NT 0x00040000L
44
45/* minor os version */
46#define VOS__BASE 0x00000000L
47#define VOS__WINDOWS16 0x00000001L
48#define VOS__PM16 0x00000002L
49#define VOS__PM32 0x00000003L
50#define VOS__WINDOWS32 0x00000004L
51
52/* possible versions */
53#define VOS_DOS_WINDOWS16 (VOS_DOS|VOS__WINDOWS16)
54#define VOS_DOS_WINDOWS32 (VOS_DOS|VOS__WINDOWS32)
55#define VOS_OS216_PM16 (VOS_OS216|VOS__PM16)
56#define VOS_OS232_PM32 (VOS_OS232|VOS__PM32)
57#define VOS_NT_WINDOWS32 (VOS_NT|VOS__WINDOWS32)
58
59/* VS_VERSION.dwFileType */
60#define VFT_UNKNOWN 0x00000000L
61#define VFT_APP 0x00000001L
62#define VFT_DLL 0x00000002L
63#define VFT_DRV 0x00000003L
64#define VFT_FONT 0x00000004L
65#define VFT_VXD 0x00000005L
66/* ??one type missing?? 0x00000006L -Marcus */
67#define VFT_STATIC_LIB 0x00000007L
68
69/* VS_VERSION.dwFileSubtype for VFT_DRV */
70#define VFT2_UNKNOWN 0x00000000L
71#define VFT2_DRV_PRINTER 0x00000001L
72#define VFT2_DRV_KEYBOARD 0x00000002L
73#define VFT2_DRV_LANGUAGE 0x00000003L
74#define VFT2_DRV_DISPLAY 0x00000004L
75#define VFT2_DRV_MOUSE 0x00000005L
76#define VFT2_DRV_NETWORK 0x00000006L
77#define VFT2_DRV_SYSTEM 0x00000007L
78#define VFT2_DRV_INSTALLABLE 0x00000008L
79#define VFT2_DRV_SOUND 0x00000009L
80#define VFT2_DRV_COMM 0x0000000aL
81#define VFT2_DRV_INPUTMETHOD 0x0000000bL
82
83/* VS_VERSION.dwFileSubtype for VFT_FONT */
84#define VFT2_FONT_RASTER 0x00000001L
85#define VFT2_FONT_VECTOR 0x00000002L
86#define VFT2_FONT_TRUETYPE 0x00000003L
87
88/* VerFindFile Flags */
89 /* input */
90#define VFFF_ISSHAREDFILE 0x0001
91
92 /* output (returned) */
93#define VFF_CURNEDEST 0x0001
94#define VFF_FILEINUSE 0x0002
95#define VFF_BUFFTOOSMALL 0x0004
96
97/* VerInstallFile Flags */
98 /* input */
99#define VIFF_FORCEINSTALL 0x0001
100#define VIFF_DONTDELETEOLD 0x0002
101
102 /* output (return) */
103#define VIF_TEMPFILE 0x00000001L
104#define VIF_MISMATCH 0x00000002L
105#define VIF_SRCOLD 0x00000004L
106#define VIF_DIFFLANG 0x00000008L
107#define VIF_DIFFCODEPG 0x00000010L
108#define VIF_DIFFTYPE 0x00000020L
109#define VIF_WRITEPROT 0x00000040L
110#define VIF_FILEINUSE 0x00000080L
111#define VIF_OUTOFSPACE 0x00000100L
112#define VIF_ACCESSVIOLATION 0x00000200L
113#define VIF_SHARINGVIOLATION 0x00000400L
114#define VIF_CANNOTCREATE 0x00000800L
115#define VIF_CANNOTDELETE 0x00001000L
116#define VIF_CANNOTRENAME 0x00002000L
117#define VIF_CANNOTDELETECUR 0x00004000L
118#define VIF_OUTOFMEMORY 0x00008000L
119#define VIF_CANNOTREADSRC 0x00010000L
120#define VIF_CANNOTREADDST 0x00020000L
121#define VIF_BUFFTOOSMALL 0x00040000L
122
123typedef struct tagVS_FIXEDFILEINFO {
124 DWORD dwSignature;
125 DWORD dwStrucVersion;
126 DWORD dwFileVersionMS;
127 DWORD dwFileVersionLS;
128 DWORD dwProductVersionMS;
129 DWORD dwProductVersionLS;
130 DWORD dwFileFlagsMask;
131 DWORD dwFileFlags;
132 DWORD dwFileOS;
133 DWORD dwFileType;
134 DWORD dwFileSubtype;
135 DWORD dwFileDateMS;
136 DWORD dwFileDateLS;
137} VS_FIXEDFILEINFO;
138
139
140#ifndef RC_INVOKED
141
142/* function prototypes */
143
144DWORD WINAPI VerFindFile16(UINT16,LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT16*,LPSTR,UINT16*);
145DWORD WINAPI VerFindFileA(UINT,LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT*,LPSTR,UINT*);
146DWORD WINAPI VerFindFileW(UINT,LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,UINT*,LPWSTR,UINT*);
147#define VerFindFile WINELIB_NAME_AW(VerFindFile)
148DWORD WINAPI VerInstallFile16(UINT16,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT16*);
149DWORD WINAPI VerInstallFileA(UINT,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT*);
150DWORD WINAPI VerInstallFileW(UINT,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,UINT*);
151#define VerInstallFile WINELIB_NAME_AW(VerInstallFile)
152DWORD WINAPI VerLanguageName16(UINT16,LPSTR,UINT16);
153DWORD WINAPI VerQueryValue16(SEGPTR,LPCSTR,SEGPTR*,UINT16*);
154DWORD WINAPI VerQueryValueA(LPVOID,LPCSTR,LPVOID*,UINT*);
155DWORD WINAPI VerQueryValueW(LPVOID,LPCWSTR,LPVOID*,UINT*);
156#define VerQueryValue WINELIB_NAME_AW(VerQueryValue)
157DWORD WINAPI GetFileVersionInfoSize16(LPCSTR,LPDWORD);
158DWORD WINAPI GetFileVersionInfoSizeA(LPCSTR,LPDWORD);
159DWORD WINAPI GetFileVersionInfoSizeW(LPCWSTR,LPDWORD);
160#define GetFileVersionInfoSize WINELIB_NAME_AW(GetFileVersionInfoSize)
161DWORD WINAPI GetFileVersionInfo16(LPCSTR,DWORD,DWORD,LPVOID);
162DWORD WINAPI GetFileVersionInfoA(LPCSTR,DWORD,DWORD,LPVOID);
163DWORD WINAPI GetFileVersionInfoW(LPCWSTR,DWORD,DWORD,LPVOID);
164#define GetFileVersionInfo WINELIB_NAME_AW(GetFileVersionInfo)
165
166/* 20 GETFILEVERSIONINFORAW */
167
168#ifdef __WINE__
169
170DWORD WINAPI GetFileResourceSize( LPCSTR lpszFileName,
171 LPCSTR lpszResType, LPCSTR lpszResId,
172 LPDWORD lpdwFileOffset );
173DWORD WINAPI GetFileResource( LPCSTR lpszFileName,
174 LPCSTR lpszResType, LPCSTR lpszResId,
175 DWORD dwFileOffset,
176 DWORD dwResLen, LPVOID lpvData );
177
178#endif /* __WINE__ */
179
180#endif /* RC_INVOKED */
181
182#endif /* __ODIN_VERSION_H */
Note: See TracBrowser for help on using the repository browser.