Artifact Content

Not logged in

Artifact e2bb31df25854a971f9ddffbb966bde19a6a2d08


     1  module win32.winver;
     2  
     3  // Translated from Microsoft Platform SDK August 2001 Edition
     4  // by Y.Tomino
     5  
     6  import win32.winuser;
     7  
     8  // #ifndef VER_H
     9  // #define VER_H
    10  
    11  // #ifdef __cplusplus
    12  // extern "C" {
    13  // #endif
    14  
    15  alias RT_VERSION VS_FILE_INFO;
    16  enum : uint { VS_VERSION_INFO = 1 }
    17  enum : uint { VS_USER_DEFINED = 100 }
    18  
    19  // #ifndef _MAC
    20  enum : uint { VS_FFI_SIGNATURE = 0xFEEF04BD }
    21  // #else
    22  // #...
    23  // #endif
    24  enum : uint { VS_FFI_STRUCVERSION = 0x00010000 }
    25  enum : uint { VS_FFI_FILEFLAGSMASK = 0x0000003F }
    26  
    27  enum : uint { VS_FF_DEBUG = 0x00000001 }
    28  enum : uint { VS_FF_PRERELEASE = 0x00000002 }
    29  enum : uint { VS_FF_PATCHED = 0x00000004 }
    30  enum : uint { VS_FF_PRIVATEBUILD = 0x00000008 }
    31  enum : uint { VS_FF_INFOINFERRED = 0x00000010 }
    32  enum : uint { VS_FF_SPECIALBUILD = 0x00000020 }
    33  
    34  enum : uint { VOS_UNKNOWN = 0x00000000 }
    35  enum : uint { VOS_DOS = 0x00010000 }
    36  enum : uint { VOS_OS216 = 0x00020000 }
    37  enum : uint { VOS_OS232 = 0x00030000 }
    38  enum : uint { VOS_NT = 0x00040000 }
    39  
    40  enum : uint { VOS__BASE = 0x00000000 }
    41  enum : uint { VOS__WINDOWS16 = 0x00000001 }
    42  enum : uint { VOS__PM16 = 0x00000002 }
    43  enum : uint { VOS__PM32 = 0x00000003 }
    44  enum : uint { VOS__WINDOWS32 = 0x00000004 }
    45  
    46  enum : uint { VOS_DOS_WINDOWS16 = 0x00010001 }
    47  enum : uint { VOS_DOS_WINDOWS32 = 0x00010004 }
    48  enum : uint { VOS_OS216_PM16 = 0x00020002 }
    49  enum : uint { VOS_OS232_PM32 = 0x00030003 }
    50  enum : uint { VOS_NT_WINDOWS32 = 0x00040004 }
    51  
    52  enum : uint { VFT_UNKNOWN = 0x00000000 }
    53  enum : uint { VFT_APP = 0x00000001 }
    54  enum : uint { VFT_DLL = 0x00000002 }
    55  enum : uint { VFT_DRV = 0x00000003 }
    56  enum : uint { VFT_FONT = 0x00000004 }
    57  enum : uint { VFT_VXD = 0x00000005 }
    58  enum : uint { VFT_STATIC_LIB = 0x00000007 }
    59  
    60  enum : uint { VFT2_UNKNOWN = 0x00000000 }
    61  enum : uint { VFT2_DRV_PRINTER = 0x00000001 }
    62  enum : uint { VFT2_DRV_KEYBOARD = 0x00000002 }
    63  enum : uint { VFT2_DRV_LANGUAGE = 0x00000003 }
    64  enum : uint { VFT2_DRV_DISPLAY = 0x00000004 }
    65  enum : uint { VFT2_DRV_MOUSE = 0x00000005 }
    66  enum : uint { VFT2_DRV_NETWORK = 0x00000006 }
    67  enum : uint { VFT2_DRV_SYSTEM = 0x00000007 }
    68  enum : uint { VFT2_DRV_INSTALLABLE = 0x00000008 }
    69  enum : uint { VFT2_DRV_SOUND = 0x00000009 }
    70  enum : uint { VFT2_DRV_COMM = 0x0000000A }
    71  enum : uint { VFT2_DRV_INPUTMETHOD = 0x0000000B }
    72  enum : uint { VFT2_DRV_VERSIONED_PRINTER = 0x0000000C }
    73  
    74  enum : uint { VFT2_FONT_RASTER = 0x00000001 }
    75  enum : uint { VFT2_FONT_VECTOR = 0x00000002 }
    76  enum : uint { VFT2_FONT_TRUETYPE = 0x00000003 }
    77  
    78  enum : uint { VFFF_ISSHAREDFILE = 0x0001 }
    79  
    80  enum : uint { VFF_CURNEDEST = 0x0001 }
    81  enum : uint { VFF_FILEINUSE = 0x0002 }
    82  enum : uint { VFF_BUFFTOOSMALL = 0x0004 }
    83  
    84  enum : uint { VIFF_FORCEINSTALL = 0x0001 }
    85  enum : uint { VIFF_DONTDELETEOLD = 0x0002 }
    86  
    87  enum : uint { VIF_TEMPFILE = 0x00000001 }
    88  enum : uint { VIF_MISMATCH = 0x00000002 }
    89  enum : uint { VIF_SRCOLD = 0x00000004 }
    90  
    91  enum : uint { VIF_DIFFLANG = 0x00000008 }
    92  enum : uint { VIF_DIFFCODEPG = 0x00000010 }
    93  enum : uint { VIF_DIFFTYPE = 0x00000020 }
    94  
    95  enum : uint { VIF_WRITEPROT = 0x00000040 }
    96  enum : uint { VIF_FILEINUSE = 0x00000080 }
    97  enum : uint { VIF_OUTOFSPACE = 0x00000100 }
    98  enum : uint { VIF_ACCESSVIOLATION = 0x00000200 }
    99  enum : uint { VIF_SHARINGVIOLATION = 0x00000400 }
   100  enum : uint { VIF_CANNOTCREATE = 0x00000800 }
   101  enum : uint { VIF_CANNOTDELETE = 0x00001000 }
   102  enum : uint { VIF_CANNOTRENAME = 0x00002000 }
   103  enum : uint { VIF_CANNOTDELETECUR = 0x00004000 }
   104  enum : uint { VIF_OUTOFMEMORY = 0x00008000 }
   105  
   106  enum : uint { VIF_CANNOTREADSRC = 0x00010000 }
   107  enum : uint { VIF_CANNOTREADDST = 0x00020000 }
   108  
   109  enum : uint { VIF_BUFFTOOSMALL = 0x00040000 }
   110  enum : uint { VIF_CANNOTLOADLZ32 = 0x00080000 }
   111  enum : uint { VIF_CANNOTLOADCABINET = 0x00100000 }
   112  
   113  // #ifndef RC_INVOKED              /* RC doesn't need to see the rest of this */
   114  
   115  struct tagVS_FIXEDFILEINFO {
   116    DWORD dwSignature;
   117    DWORD dwStrucVersion;
   118    DWORD dwFileVersionMS;
   119    DWORD dwFileVersionLS;
   120    DWORD dwProductVersionMS;
   121    DWORD dwProductVersionLS;
   122    DWORD dwFileFlagsMask;
   123    DWORD dwFileFlags;
   124    DWORD dwFileOS;
   125    DWORD dwFileType;
   126    DWORD dwFileSubtype;
   127    DWORD dwFileDateMS;
   128    DWORD dwFileDateLS;
   129  }
   130  alias tagVS_FIXEDFILEINFO VS_FIXEDFILEINFO;
   131  
   132  extern(Windows) export DWORD VerFindFileA(
   133          DWORD uFlags,
   134          LPSTR szFileName,
   135          LPSTR szWinDir,
   136          LPSTR szAppDir,
   137          LPSTR szCurDir,
   138          PUINT lpuCurDirLen,
   139          LPSTR szDestDir,
   140          PUINT lpuDestDirLen
   141          );
   142  extern(Windows) export DWORD VerFindFileW(
   143          DWORD uFlags,
   144          LPWSTR szFileName,
   145          LPWSTR szWinDir,
   146          LPWSTR szAppDir,
   147          LPWSTR szCurDir,
   148          PUINT lpuCurDirLen,
   149          LPWSTR szDestDir,
   150          PUINT lpuDestDirLen
   151          );
   152  // #ifdef UNICODE
   153  alias VerFindFileW VerFindFile;
   154  // #else
   155  // #...
   156  // #endif // !UNICODE
   157  
   158  extern(Windows) export DWORD VerInstallFileA(
   159          DWORD uFlags,
   160          LPSTR szSrcFileName,
   161          LPSTR szDestFileName,
   162          LPSTR szSrcDir,
   163          LPSTR szDestDir,
   164          LPSTR szCurDir,
   165          LPSTR szTmpFile,
   166          PUINT lpuTmpFileLen
   167          );
   168  extern(Windows) export DWORD VerInstallFileW(
   169          DWORD uFlags,
   170          LPWSTR szSrcFileName,
   171          LPWSTR szDestFileName,
   172          LPWSTR szSrcDir,
   173          LPWSTR szDestDir,
   174          LPWSTR szCurDir,
   175          LPWSTR szTmpFile,
   176          PUINT lpuTmpFileLen
   177          );
   178  // #ifdef UNICODE
   179  alias VerInstallFileW VerInstallFile;
   180  // #else
   181  // #...
   182  // #endif // !UNICODE
   183  
   184  extern(Windows) export DWORD GetFileVersionInfoSizeA(
   185          LPSTR lptstrFilename, 
   186          LPDWORD lpdwHandle
   187          );
   188  
   189  extern(Windows) export DWORD GetFileVersionInfoSizeW(
   190          LPWSTR lptstrFilename, 
   191          LPDWORD lpdwHandle
   192          );
   193  // #ifdef UNICODE
   194  alias GetFileVersionInfoSizeW GetFileVersionInfoSize;
   195  // #else
   196  // #...
   197  // #endif // !UNICODE
   198  
   199  extern(Windows) export BOOL GetFileVersionInfoA(
   200          LPSTR lptstrFilename, 
   201          DWORD dwHandle,         
   202          DWORD dwLen,            
   203          LPVOID lpData
   204          );
   205  
   206  extern(Windows) export BOOL GetFileVersionInfoW(
   207          LPWSTR lptstrFilename, 
   208          DWORD dwHandle,         
   209          DWORD dwLen,            
   210          LPVOID lpData
   211          );
   212  // #ifdef UNICODE
   213  alias GetFileVersionInfoW GetFileVersionInfo;
   214  // #else
   215  // #...
   216  // #endif // !UNICODE
   217  
   218  extern(Windows) export DWORD VerLanguageNameA(
   219          DWORD wLang,
   220          LPSTR szLang,
   221          DWORD nSize
   222          );
   223  extern(Windows) export DWORD VerLanguageNameW(
   224          DWORD wLang,
   225          LPWSTR szLang,
   226          DWORD nSize
   227          );
   228  // #ifdef UNICODE
   229  alias VerLanguageNameW VerLanguageName;
   230  // #else
   231  // #...
   232  // #endif // !UNICODE
   233  
   234  extern(Windows) export BOOL VerQueryValueA(
   235           LPVOID pBlock,
   236          LPSTR lpSubBlock,
   237          LPVOID * lplpBuffer,
   238          PUINT puLen
   239          );
   240  extern(Windows) export BOOL VerQueryValueW(
   241           LPVOID pBlock,
   242          LPWSTR lpSubBlock,
   243          LPVOID * lplpBuffer,
   244          PUINT puLen
   245          );
   246  // #ifdef UNICODE
   247  alias VerQueryValueW VerQueryValue;
   248  // #else
   249  // #...
   250  // #endif // !UNICODE
   251  
   252  // #endif  /* !RC_INVOKED */
   253  
   254  // #ifdef __cplusplus
   255  // }
   256  // #endif
   257  
   258  // #endif  /* !VER_H */
   259