1 /** 2 * This file has no copyright assigned and is placed in the Public Domain. 3 * This file is part of the mingw-w64 runtime package. 4 * No warranty is given; refer to the file DISCLAIMER.PD within this package. 5 */ 6 #ifndef _INC_WINSXS 7 #define _INC_WINSXS 8 #if (_WIN32_WINNT >= 0x0600) 9 10 typedef enum ASM_CMP_FLAGS { 11 ASM_CMPF_NAME = 0x1, 12 ASM_CMPF_MAJOR_VERSION = 0x2, 13 ASM_CMPF_MINOR_VERSION = 0x4, 14 ASM_CMPF_BUILD_NUMBER = 0x8, 15 ASM_CMPF_REVISION_NUMBER = 0x10, 16 ASM_CMPF_PUBLIC_KEY_TOKEN = 0x20, 17 ASM_CMPF_CULTURE = 0x40, 18 ASM_CMPF_CUSTOM = 0x80, 19 ASM_CMPF_ALL, 20 ASM_CMPF_DEFAULT = 0x100 21 } ASM_CMP_FLAGS; 22 23 typedef enum ASM_NAME { 24 ASM_NAME_PUBLIC_KEY, 25 ASM_NAME_PUBLIC_KEY_TOKEN, 26 ASM_NAME_HASH_VALUE, 27 ASM_NAME_NAME, 28 ASM_NAME_MAJOR_VERSION, 29 ASM_NAME_MINOR_VERSION, 30 ASM_NAME_BUILD_NUMBER, 31 ASM_NAME_REVISION_NUMBER, 32 ASM_NAME_CULTURE, 33 ASM_NAME_PROCESSOR_ID_ARRAY, 34 ASM_NAME_OSINFO_ARRAY, 35 ASM_NAME_HASH_ALGID, 36 ASM_NAME_ALIAS, 37 ASM_NAME_CODEBASE_URL, 38 ASM_NAME_CODEBASE_LASTMOD, 39 ASM_NAME_NULL_PUBLIC_KEY, 40 ASM_NAME_NULL_PUBLIC_KEY_TOKEN, 41 ASM_NAME_CUSTOM, 42 ASM_NAME_NULL_CUSTOM, 43 ASM_NAME_MVID, 44 ASM_NAME_MAX_PARAMS 45 } ASM_NAME; 46 47 typedef enum _CREATE_ASM_NAME_OBJ_FLAGS { 48 CANOF_PARSE_DISPLAY_NAME = 0x1, 49 CANOF_SET_DEFAULT_VALUES = 0x2 50 } CREATE_ASM_NAME_OBJ_FLAGS; 51 52 typedef struct _ASSEMBLY_INFO { 53 ULONG cbAssemblyInfo; 54 DWORD dwAssemblyFlags; 55 ULARGE_INTEGER uliAssemblySizeInKB; 56 LPWSTR pszCurrentAssemblyPathBuf; 57 ULONG cchBuf; 58 } ASSEMBLY_INFO; 59 60 typedef enum { 61 ASM_DISPLAYF_VERSION = 0x1, 62 ASM_DISPLAYF_CULTURE = 0x2, 63 ASM_DISPLAYF_PUBLIC_KEY_TOKEN = 0x4, 64 ASM_DISPLAYF_PUBLIC_KEY = 0x8, 65 ASM_DISPLAYF_CUSTOM = 0x10, 66 ASM_DISPLAYF_PROCESSORARCHITECTURE = 0x20, 67 ASM_DISPLAYF_LANGUAGEID = 0x40 68 } ASM_DISPLAY_FLAGS; 69 70 typedef struct _FUSION_INSTALL_REFERENCE { 71 DWORD cbSize; 72 DWORD dwFlags; 73 GUID guidScheme; 74 LPCWSTR szIdentifier; 75 LPCWSTR szNonCannonicalData; 76 } FUSION_INSTALL_REFERENCE , *LPFUSION_INSTALL_REFERENCE; 77 78 /* in sxs.dll but not in any headers 79 HRESULT STDAPI CreateAssemblyCache( 80 IAssemblyCache **ppAsmCache, 81 DWORD dwReserved 82 ); 83 84 HRESULT STDAPI CreateAssemblyNameObject( 85 LPASSEMBLYNAME **ppAssemblyNameObj, 86 LPCWSTR szAssemblyName, 87 DWORD dwFlags, 88 LPVOID pvReserved 89 ); 90 91 */ 92 93 #endif /*(_WIN32_WINNT >= 0x0600)*/ 94 #endif /*_INC_WINSXS*/ 95