|  | /* Definitions for the VERsion infolibrary (VER.DLL) | 
|  | * | 
|  | * Copyright 1996 Marcus Meissner | 
|  | * | 
|  | * This library is free software; you can redistribute it and/or | 
|  | * modify it under the terms of the GNU Lesser General Public | 
|  | * License as published by the Free Software Foundation; either | 
|  | * version 2.1 of the License, or (at your option) any later version. | 
|  | * | 
|  | * This library is distributed in the hope that it will be useful, | 
|  | * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|  | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | 
|  | * Lesser General Public License for more details. | 
|  | * | 
|  | * You should have received a copy of the GNU Lesser General Public | 
|  | * License along with this library; if not, write to the Free Software | 
|  | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA | 
|  | */ | 
|  |  | 
|  | #ifndef __WINE_WINVER_H | 
|  | #define __WINE_WINVER_H | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | extern "C" { | 
|  | #endif /* defined(__cplusplus) */ | 
|  |  | 
|  | /* resource ids for different version infos */ | 
|  | #define	VS_FILE_INFO		16 | 
|  | #define	VS_VERSION_INFO		1 | 
|  | #define	VS_USER_DEFINED		100 | 
|  |  | 
|  | #define	VS_FFI_SIGNATURE	0xfeef04bdL	/* FileInfo Magic */ | 
|  | #define	VS_FFI_STRUCVERSION	0x00010000L	/* struc version 1.0 */ | 
|  | #define	VS_FFI_FILEFLAGSMASK	0x0000003fL	/* valid flags */ | 
|  |  | 
|  | /* VS_VERSION.dwFileFlags */ | 
|  | #define	VS_FF_DEBUG		0x01L | 
|  | #define	VS_FF_PRERELEASE	0x02L | 
|  | #define	VS_FF_PATCHED		0x04L | 
|  | #define	VS_FF_PRIVATEBUILD	0x08L | 
|  | #define	VS_FF_INFOINFERRED	0x10L | 
|  | #define	VS_FF_SPECIALBUILD	0x20L | 
|  |  | 
|  | /* VS_VERSION.dwFileOS */ | 
|  |  | 
|  | /* major os version */ | 
|  | #define	VOS_UNKNOWN		0x00000000L | 
|  | #define	VOS_DOS			0x00010000L | 
|  | #define	VOS_OS216		0x00020000L | 
|  | #define	VOS_OS232		0x00030000L | 
|  | #define	VOS_NT			0x00040000L | 
|  |  | 
|  | /* minor os version */ | 
|  | #define	VOS__BASE		0x00000000L | 
|  | #define	VOS__WINDOWS16		0x00000001L | 
|  | #define	VOS__PM16		0x00000002L | 
|  | #define	VOS__PM32		0x00000003L | 
|  | #define	VOS__WINDOWS32		0x00000004L | 
|  |  | 
|  | /* possible versions */ | 
|  | #define	VOS_DOS_WINDOWS16	(VOS_DOS|VOS__WINDOWS16) | 
|  | #define	VOS_DOS_WINDOWS32	(VOS_DOS|VOS__WINDOWS32) | 
|  | #define	VOS_OS216_PM16		(VOS_OS216|VOS__PM16) | 
|  | #define	VOS_OS232_PM32		(VOS_OS232|VOS__PM32) | 
|  | #define	VOS_NT_WINDOWS32	(VOS_NT|VOS__WINDOWS32) | 
|  |  | 
|  | /* VS_VERSION.dwFileType */ | 
|  | #define	VFT_UNKNOWN		0x00000000L | 
|  | #define	VFT_APP			0x00000001L | 
|  | #define	VFT_DLL			0x00000002L | 
|  | #define	VFT_DRV			0x00000003L | 
|  | #define	VFT_FONT		0x00000004L | 
|  | #define	VFT_VXD			0x00000005L | 
|  | /* ??one type missing??		0x00000006L -Marcus */ | 
|  | #define	VFT_STATIC_LIB		0x00000007L | 
|  |  | 
|  | /* VS_VERSION.dwFileSubtype for VFT_DRV */ | 
|  | #define	VFT2_UNKNOWN		0x00000000L | 
|  | #define	VFT2_DRV_PRINTER	0x00000001L | 
|  | #define	VFT2_DRV_KEYBOARD	0x00000002L | 
|  | #define	VFT2_DRV_LANGUAGE	0x00000003L | 
|  | #define	VFT2_DRV_DISPLAY	0x00000004L | 
|  | #define	VFT2_DRV_MOUSE		0x00000005L | 
|  | #define	VFT2_DRV_NETWORK	0x00000006L | 
|  | #define	VFT2_DRV_SYSTEM		0x00000007L | 
|  | #define	VFT2_DRV_INSTALLABLE	0x00000008L | 
|  | #define	VFT2_DRV_SOUND		0x00000009L | 
|  | #define	VFT2_DRV_COMM		0x0000000aL | 
|  | #define	VFT2_DRV_INPUTMETHOD	0x0000000bL | 
|  | #define	VFT2_DRV_VERSIONED_PRINTER	0x0000000cL | 
|  |  | 
|  | /* VS_VERSION.dwFileSubtype for VFT_FONT */ | 
|  | #define	VFT2_FONT_RASTER	0x00000001L | 
|  | #define	VFT2_FONT_VECTOR	0x00000002L | 
|  | #define	VFT2_FONT_TRUETYPE	0x00000003L | 
|  |  | 
|  | /* VerFindFile Flags */ | 
|  | /* input */ | 
|  | #define	VFFF_ISSHAREDFILE	0x0001 | 
|  |  | 
|  | /* output (returned) */ | 
|  | #define	VFF_CURNEDEST		0x0001 | 
|  | #define	VFF_FILEINUSE		0x0002 | 
|  | #define	VFF_BUFFTOOSMALL	0x0004 | 
|  |  | 
|  | /* VerInstallFile Flags */ | 
|  | /* input */ | 
|  | #define	VIFF_FORCEINSTALL	0x0001 | 
|  | #define	VIFF_DONTDELETEOLD	0x0002 | 
|  |  | 
|  | /* output (return) */ | 
|  | #define	VIF_TEMPFILE		0x00000001L | 
|  | #define	VIF_MISMATCH		0x00000002L | 
|  | #define	VIF_SRCOLD		0x00000004L | 
|  | #define	VIF_DIFFLANG		0x00000008L | 
|  | #define	VIF_DIFFCODEPG		0x00000010L | 
|  | #define	VIF_DIFFTYPE		0x00000020L | 
|  | #define	VIF_WRITEPROT		0x00000040L | 
|  | #define	VIF_FILEINUSE		0x00000080L | 
|  | #define	VIF_OUTOFSPACE		0x00000100L | 
|  | #define	VIF_ACCESSVIOLATION	0x00000200L | 
|  | #define	VIF_SHARINGVIOLATION	0x00000400L | 
|  | #define	VIF_CANNOTCREATE	0x00000800L | 
|  | #define	VIF_CANNOTDELETE	0x00001000L | 
|  | #define	VIF_CANNOTRENAME	0x00002000L | 
|  | #define	VIF_CANNOTDELETECUR	0x00004000L | 
|  | #define	VIF_OUTOFMEMORY		0x00008000L | 
|  | #define	VIF_CANNOTREADSRC	0x00010000L | 
|  | #define	VIF_CANNOTREADDST	0x00020000L | 
|  | #define	VIF_BUFFTOOSMALL	0x00040000L | 
|  |  | 
|  | 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; | 
|  |  | 
|  |  | 
|  | #ifndef RC_INVOKED | 
|  |  | 
|  | /* function prototypes */ | 
|  |  | 
|  | DWORD       WINAPI VerFindFileA(DWORD,LPCSTR,LPCSTR,LPCSTR,LPSTR,PUINT,LPSTR,PUINT); | 
|  | DWORD       WINAPI VerFindFileW(DWORD,LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,PUINT,LPWSTR,PUINT); | 
|  | #define     VerFindFile WINELIB_NAME_AW(VerFindFile) | 
|  | DWORD       WINAPI VerInstallFileA(DWORD,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPSTR,PUINT); | 
|  | DWORD       WINAPI VerInstallFileW(DWORD,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,PUINT); | 
|  | #define     VerInstallFile WINELIB_NAME_AW(VerInstallFile) | 
|  | DWORD       WINAPI VerLanguageNameA(DWORD,LPSTR,DWORD); | 
|  | DWORD       WINAPI VerLanguageNameW(DWORD,LPWSTR,DWORD); | 
|  | #define     VerLanguageName WINELIB_NAME_AW(VerLanguageName) | 
|  | BOOL        WINAPI VerQueryValueA(LPCVOID,LPCSTR,LPVOID*,PUINT); | 
|  | BOOL        WINAPI VerQueryValueW(LPCVOID,LPCWSTR,LPVOID*,PUINT); | 
|  | #define     VerQueryValue WINELIB_NAME_AW(VerQueryValue) | 
|  | DWORD       WINAPI GetFileVersionInfoSizeA(LPCSTR,LPDWORD); | 
|  | DWORD       WINAPI GetFileVersionInfoSizeW(LPCWSTR,LPDWORD); | 
|  | #define     GetFileVersionInfoSize WINELIB_NAME_AW(GetFileVersionInfoSize) | 
|  | BOOL        WINAPI GetFileVersionInfoA(LPCSTR,DWORD,DWORD,LPVOID); | 
|  | BOOL        WINAPI GetFileVersionInfoW(LPCWSTR,DWORD,DWORD,LPVOID); | 
|  | #define     GetFileVersionInfo WINELIB_NAME_AW(GetFileVersionInfo) | 
|  |  | 
|  | /* 20 GETFILEVERSIONINFORAW */ | 
|  |  | 
|  | #endif /* RC_INVOKED */ | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | } /* extern "C" */ | 
|  | #endif /* defined(__cplusplus) */ | 
|  |  | 
|  | #endif /* __WINE_WINVER_H */ |