--- mstools/h/winver.h 2018/08/09 18:21:14 1.1.1.3 +++ mstools/h/winver.h 2018/08/09 18:23:11 1.1.1.4 @@ -6,111 +6,115 @@ * designed to allow version stamping of Windows executable files* * and of special .VER files for DOS executable files. * * * -* Copyright (c) 1992, Microsoft Corp. All rights reserved * +* Copyright (c) 1993, Microsoft Corp. All rights reserved * * * \*****************************************************************************/ #ifndef VER_H #define VER_H +#ifdef __cplusplus +extern "C" { +#endif + /* ----- Symbols ----- */ -#define VS_FILE_INFO RT_VERSION -#define VS_VERSION_INFO 1 -#define VS_USER_DEFINED 100 +#define VS_FILE_INFO RT_VERSION +#define VS_VERSION_INFO 1 +#define VS_USER_DEFINED 100 /* ----- VS_VERSION.dwFileFlags ----- */ -#define VS_FFI_SIGNATURE 0xFEEF04BDL -#define VS_FFI_STRUCVERSION 0x00010000L -#define VS_FFI_FILEFLAGSMASK 0x0000003FL +#define VS_FFI_SIGNATURE 0xFEEF04BDL +#define VS_FFI_STRUCVERSION 0x00010000L +#define VS_FFI_FILEFLAGSMASK 0x0000003FL /* ----- VS_VERSION.dwFileFlags ----- */ -#define VS_FF_DEBUG 0x00000001L -#define VS_FF_PRERELEASE 0x00000002L -#define VS_FF_PATCHED 0x00000004L -#define VS_FF_PRIVATEBUILD 0x00000008L -#define VS_FF_INFOINFERRED 0x00000010L -#define VS_FF_SPECIALBUILD 0x00000020L +#define VS_FF_DEBUG 0x00000001L +#define VS_FF_PRERELEASE 0x00000002L +#define VS_FF_PATCHED 0x00000004L +#define VS_FF_PRIVATEBUILD 0x00000008L +#define VS_FF_INFOINFERRED 0x00000010L +#define VS_FF_SPECIALBUILD 0x00000020L /* ----- VS_VERSION.dwFileOS ----- */ -#define VOS_UNKNOWN 0x00000000L -#define VOS_DOS 0x00010000L -#define VOS_OS216 0x00020000L -#define VOS_OS232 0x00030000L -#define VOS_NT 0x00040000L - -#define VOS__BASE 0x00000000L -#define VOS__WINDOWS16 0x00000001L -#define VOS__PM16 0x00000002L -#define VOS__PM32 0x00000003L -#define VOS__WINDOWS32 0x00000004L - -#define VOS_DOS_WINDOWS16 0x00010001L -#define VOS_DOS_WINDOWS32 0x00010004L -#define VOS_OS216_PM16 0x00020002L -#define VOS_OS232_PM32 0x00030003L -#define VOS_NT_WINDOWS32 0x00040004L +#define VOS_UNKNOWN 0x00000000L +#define VOS_DOS 0x00010000L +#define VOS_OS216 0x00020000L +#define VOS_OS232 0x00030000L +#define VOS_NT 0x00040000L + +#define VOS__BASE 0x00000000L +#define VOS__WINDOWS16 0x00000001L +#define VOS__PM16 0x00000002L +#define VOS__PM32 0x00000003L +#define VOS__WINDOWS32 0x00000004L + +#define VOS_DOS_WINDOWS16 0x00010001L +#define VOS_DOS_WINDOWS32 0x00010004L +#define VOS_OS216_PM16 0x00020002L +#define VOS_OS232_PM32 0x00030003L +#define VOS_NT_WINDOWS32 0x00040004L /* ----- 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 -#define VFT_STATIC_LIB 0x00000007L +#define VFT_UNKNOWN 0x00000000L +#define VFT_APP 0x00000001L +#define VFT_DLL 0x00000002L +#define VFT_DRV 0x00000003L +#define VFT_FONT 0x00000004L +#define VFT_VXD 0x00000005L +#define VFT_STATIC_LIB 0x00000007L /* ----- VS_VERSION.dwFileSubtype for VFT_WINDOWS_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_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 /* ----- VS_VERSION.dwFileSubtype for VFT_WINDOWS_FONT ----- */ -#define VFT2_FONT_RASTER 0x00000001L -#define VFT2_FONT_VECTOR 0x00000002L -#define VFT2_FONT_TRUETYPE 0x00000003L +#define VFT2_FONT_RASTER 0x00000001L +#define VFT2_FONT_VECTOR 0x00000002L +#define VFT2_FONT_TRUETYPE 0x00000003L /* ----- VerFindFile() flags ----- */ -#define VFFF_ISSHAREDFILE 0x0001 +#define VFFF_ISSHAREDFILE 0x0001 -#define VFF_CURNEDEST 0x0001 -#define VFF_FILEINUSE 0x0002 -#define VFF_BUFFTOOSMALL 0x0004 +#define VFF_CURNEDEST 0x0001 +#define VFF_FILEINUSE 0x0002 +#define VFF_BUFFTOOSMALL 0x0004 /* ----- VerInstallFile() flags ----- */ -#define VIFF_FORCEINSTALL 0x0001 -#define VIFF_DONTDELETEOLD 0x0002 +#define VIFF_FORCEINSTALL 0x0001 +#define VIFF_DONTDELETEOLD 0x0002 -#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_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_CANNOTREADSRC 0x00010000L +#define VIF_CANNOTREADDST 0x00020000L -#define VIF_BUFFTOOSMALL 0x00040000L +#define VIF_BUFFTOOSMALL 0x00040000L #ifndef RC_INVOKED /* RC doesn't need to see the rest of this */ @@ -138,148 +142,153 @@ typedef struct tagVS_FIXEDFILEINFO DWORD APIENTRY VerFindFileA( - DWORD uFlags, - LPSTR szFileName, - LPSTR szWinDir, - LPSTR szAppDir, - LPSTR szCurDir, - LPDWORD lpuCurDirLen, - LPSTR szDestDir, - LPDWORD lpuDestDirLen - ); + DWORD uFlags, + LPSTR szFileName, + LPSTR szWinDir, + LPSTR szAppDir, + LPSTR szCurDir, + PUINT lpuCurDirLen, + LPSTR szDestDir, + PUINT lpuDestDirLen + ); DWORD APIENTRY VerFindFileW( - DWORD uFlags, - LPWSTR szFileName, - LPWSTR szWinDir, - LPWSTR szAppDir, - LPWSTR szCurDir, - LPDWORD lpuCurDirLen, - LPWSTR szDestDir, - LPDWORD lpuDestDirLen - ); + DWORD uFlags, + LPWSTR szFileName, + LPWSTR szWinDir, + LPWSTR szAppDir, + LPWSTR szCurDir, + PUINT lpuCurDirLen, + LPWSTR szDestDir, + PUINT lpuDestDirLen + ); #ifdef UNICODE -#define VerFindFile VerFindFileW +#define VerFindFile VerFindFileW #else -#define VerFindFile VerFindFileA +#define VerFindFile VerFindFileA #endif // !UNICODE DWORD APIENTRY VerInstallFileA( - DWORD uFlags, - LPSTR szSrcFileName, - LPSTR szDestFileName, - LPSTR szSrcDir, - LPSTR szDestDir, - LPSTR szCurDir, - LPSTR szTmpFile, - LPDWORD lpuTmpFileLen - ); + DWORD uFlags, + LPSTR szSrcFileName, + LPSTR szDestFileName, + LPSTR szSrcDir, + LPSTR szDestDir, + LPSTR szCurDir, + LPSTR szTmpFile, + PUINT lpuTmpFileLen + ); DWORD APIENTRY VerInstallFileW( - DWORD uFlags, - LPWSTR szSrcFileName, - LPWSTR szDestFileName, - LPWSTR szSrcDir, - LPWSTR szDestDir, - LPWSTR szCurDir, - LPWSTR szTmpFile, - LPDWORD lpuTmpFileLen - ); + DWORD uFlags, + LPWSTR szSrcFileName, + LPWSTR szDestFileName, + LPWSTR szSrcDir, + LPWSTR szDestDir, + LPWSTR szCurDir, + LPWSTR szTmpFile, + PUINT lpuTmpFileLen + ); #ifdef UNICODE -#define VerInstallFile VerInstallFileW +#define VerInstallFile VerInstallFileW #else -#define VerInstallFile VerInstallFileA +#define VerInstallFile VerInstallFileA #endif // !UNICODE /* Returns size of version info in bytes */ DWORD APIENTRY GetFileVersionInfoSizeA( - LPSTR lptstrFilename, /* Filename of version stamped file */ - LPDWORD lpdwHandle - ); /* Information for use by GetFileVersionInfo */ + LPSTR lptstrFilename, /* Filename of version stamped file */ + LPDWORD lpdwHandle + ); /* Information for use by GetFileVersionInfo */ /* Returns size of version info in bytes */ DWORD APIENTRY GetFileVersionInfoSizeW( - LPWSTR lptstrFilename, /* Filename of version stamped file */ - LPDWORD lpdwHandle - ); /* Information for use by GetFileVersionInfo */ + LPWSTR lptstrFilename, /* Filename of version stamped file */ + LPDWORD lpdwHandle + ); /* Information for use by GetFileVersionInfo */ #ifdef UNICODE -#define GetFileVersionInfoSize GetFileVersionInfoSizeW +#define GetFileVersionInfoSize GetFileVersionInfoSizeW #else -#define GetFileVersionInfoSize GetFileVersionInfoSizeA +#define GetFileVersionInfoSize GetFileVersionInfoSizeA #endif // !UNICODE /* Read version info into buffer */ BOOL APIENTRY GetFileVersionInfoA( - LPSTR lptstrFilename, /* Filename of version stamped file */ - DWORD dwHandle, /* Information from GetFileVersionSize */ - DWORD dwLen, /* Length of buffer for info */ - LPVOID lpData - ); /* Buffer to place the data structure */ + LPSTR lptstrFilename, /* Filename of version stamped file */ + DWORD dwHandle, /* Information from GetFileVersionSize */ + DWORD dwLen, /* Length of buffer for info */ + LPVOID lpData + ); /* Buffer to place the data structure */ /* Read version info into buffer */ BOOL APIENTRY GetFileVersionInfoW( - LPWSTR lptstrFilename, /* Filename of version stamped file */ - DWORD dwHandle, /* Information from GetFileVersionSize */ - DWORD dwLen, /* Length of buffer for info */ - LPVOID lpData - ); /* Buffer to place the data structure */ + LPWSTR lptstrFilename, /* Filename of version stamped file */ + DWORD dwHandle, /* Information from GetFileVersionSize */ + DWORD dwLen, /* Length of buffer for info */ + LPVOID lpData + ); /* Buffer to place the data structure */ #ifdef UNICODE -#define GetFileVersionInfo GetFileVersionInfoW +#define GetFileVersionInfo GetFileVersionInfoW #else -#define GetFileVersionInfo GetFileVersionInfoA +#define GetFileVersionInfo GetFileVersionInfoA #endif // !UNICODE DWORD APIENTRY VerLanguageNameA( - DWORD wLang, - LPSTR szLang, - DWORD nSize - ); + DWORD wLang, + LPSTR szLang, + DWORD nSize + ); DWORD APIENTRY VerLanguageNameW( - DWORD wLang, - LPWSTR szLang, - DWORD nSize - ); + DWORD wLang, + LPWSTR szLang, + DWORD nSize + ); #ifdef UNICODE -#define VerLanguageName VerLanguageNameW +#define VerLanguageName VerLanguageNameW #else -#define VerLanguageName VerLanguageNameA +#define VerLanguageName VerLanguageNameA #endif // !UNICODE BOOL APIENTRY VerQueryValueA( - const LPVOID pBlock, - LPSTR lpSubBlock, - LPVOID * lplpBuffer, - LPDWORD lpuLen - ); + const LPVOID pBlock, + LPSTR lpSubBlock, + LPVOID * lplpBuffer, + PUINT puLen + ); BOOL APIENTRY VerQueryValueW( - const LPVOID pBlock, - LPWSTR lpSubBlock, - LPVOID * lplpBuffer, - LPDWORD lpuLen - ); + const LPVOID pBlock, + LPWSTR lpSubBlock, + LPVOID * lplpBuffer, + PUINT puLen + ); #ifdef UNICODE -#define VerQueryValue VerQueryValueW +#define VerQueryValue VerQueryValueW #else -#define VerQueryValue VerQueryValueA +#define VerQueryValue VerQueryValueA #endif // !UNICODE #endif /* !RC_INVOKED */ + +#ifdef __cplusplus +} +#endif + #endif /* !VER_H */