Logo Search packages:      
Sourcecode: wine-unstable version File versions  Download package

winver.h

/* 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 */

Generated by  Doxygen 1.6.0   Back to index