Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1687 lines
90 KiB

  1. // ==++==
  2. //
  3. // Copyright (c) Microsoft Corporation. All rights reserved.
  4. //
  5. // ==--==
  6. /*********************************************************************
  7. ** **
  8. ** CorError.h - lists the HResults used by the .NET Framework's **
  9. ** Common Language Runtime. **
  10. ** Created: September 3, 1999. **
  11. ** **
  12. *********************************************************************/
  13. #ifndef __COMMON_LANGUAGE_RUNTIME_HRESULTS__
  14. #define __COMMON_LANGUAGE_RUNTIME_HRESULTS__
  15. /*********************************************************************
  16. We use the Univeral Runtime's facility code (0x13). See URTError.h
  17. for the details on how HResults are broken up throughout the .Net
  18. Development Platform
  19. For the Common Language Runtime (the .Net Development Platform's
  20. back-end), we've been given the range 0x1yyy for now. That range
  21. was further divided for different groups within the runtime:
  22. 0x10yy for Execution Engine errors
  23. 0x11yy for Metadata, TypeLib Export, and CLDB errors
  24. 0x12yy for MD Validator
  25. 0x13yy for Debugger and Profiler errors
  26. 0x14yy for Security errors
  27. 0x15yy for Classlib errors (BCL only)
  28. 0x16yy for more Classlib errors (BCL only)
  29. 0x17yy for shim errors
  30. 0x18yy for Verifier errors
  31. 0x19yy for Framework
  32. 0x1Ayy for Framework
  33. 0x1Byy for MD Validator
  34. 0x30yy for VSA errors
  35. *********************************************************************/
  36. #include <winerror.h>
  37. #ifndef FACILITY_URT
  38. #define FACILITY_URT 0x13
  39. #endif
  40. #ifndef EMAKEHR
  41. #define SMAKEHR(val) MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_URT, val)
  42. #define EMAKEHR(val) MAKE_HRESULT(SEVERITY_ERROR, FACILITY_URT, val)
  43. #endif
  44. // ******************
  45. // FACILITY_UTF
  46. // ******************
  47. // ******************
  48. // Metadata errors
  49. // ******************
  50. //**** ICeeFileGen errors.
  51. #define CEE_E_ENTRYPOINT EMAKEHR(0x1000) // The entry point info is invalid.
  52. #define CEE_E_CVTRES_NOT_FOUND EMAKEHR(0x1001) // cannot find cvtres.exe
  53. //**** EE errors
  54. #define MSEE_E_LOADLIBFAILED EMAKEHR(0x1010) // Failed to delay load library %s (Win32 error: %d).
  55. #define MSEE_E_GETPROCFAILED EMAKEHR(0x1011) // Failed to get entry point %s (Win32 error: %d).
  56. #define MSEE_E_MULTCOPIESLOADED EMAKEHR(0x1012) // Multiple copies of MSCOREE.dll have been loaded by the same process.
  57. // the following two are COR to match the name used in the library
  58. #define COR_E_APPDOMAINUNLOADED EMAKEHR(0x1014) // access unloaded appdomain
  59. #define COR_E_CANNOTUNLOADAPPDOMAIN EMAKEHR(0x1015) // Error while unloading an appdomain
  60. #define MSEE_E_ASSEMBLYLOADINPROGRESS EMAKEHR(0x1016) // Assembly is being currently being loaded
  61. #define MSEE_E_CANNOTCREATEAPPDOMAIN EMAKEHR(0x1017) // Attempt to create appdomain failed
  62. #define COR_E_FIXUPSINEXE EMAKEHR(0x1019) // Attempt to load an unverifiable exe with fixups (IAT with more than 2 sections or a TLS section)
  63. //**** Assembly Cache errors
  64. #define COR_E_MODULE_HASH_CHECK_FAILED EMAKEHR(0x1039) // The check of the module's hash failed.
  65. #define FUSION_E_REF_DEF_MISMATCH EMAKEHR(0x1040) // The located assembly's manifest definition does not match the assembly reference.
  66. #define FUSION_E_INVALID_PRIVATE_ASM_LOCATION EMAKEHR(0x1041) // The private assembly was located outside the appbase directory.
  67. #define FUSION_E_ASM_MODULE_MISSING EMAKEHR(0x1042) // A module specified in the manifest was not found.
  68. #define FUSION_E_UNEXPECTED_MODULE_FOUND EMAKEHR(0x1043) // Modules which are not in the manifest were streamed in.
  69. #define FUSION_E_PRIVATE_ASM_DISALLOWED EMAKEHR(0x1044) // A strongly-named assembly is required.
  70. #define FUSION_E_SIGNATURE_CHECK_FAILED EMAKEHR(0x1045) // The check of the signature failed.
  71. #define FUSION_E_DATABASE_ERROR EMAKEHR(0x1046) // An unexpected error was encountered in the Assembly Cache database.
  72. #define FUSION_E_INVALID_NAME EMAKEHR(0x1047) // The given assembly name or codebase was invalid.
  73. //=============================================================================
  74. // THE VALIDATOR IS CURRENTLY USING ERROR CODES STARTING WITH 0x1050 ONWARDS.
  75. // LOOK AT ERROR CODES STARTING FROM VLDTR_E_AS_NAMENULL. JUST A NOTE IN CASE
  76. // THE EE EVER COMES TO THE POINT OF NEEDING THOSE!!!
  77. //=============================================================================
  78. //**** Generic errors.
  79. #define CLDB_E_FILE_BADREAD EMAKEHR(0x1100) // Error occured during a read.
  80. #define CLDB_E_FILE_BADWRITE EMAKEHR(0x1101) // Error occured during a write.
  81. #define CLDB_E_FILE_READONLY EMAKEHR(0x1103) // File is read only.
  82. #define CLDB_E_NAME_ERROR EMAKEHR(0x1105) // An ill-formed name was given.
  83. #define CLDB_S_TRUNCATION SMAKEHR(0x1106) // STATUS: Data value was truncated.
  84. #define CLDB_E_TRUNCATION EMAKEHR(0x1106) // ERROR: Data value was truncated.
  85. #define CLDB_E_FILE_OLDVER EMAKEHR(0x1107) // Old version error.
  86. #define CLDB_E_RELOCATED EMAKEHR(0x1108) // A shared mem open failed to open at the originally
  87. // assigned memory address.
  88. #define CLDB_S_NULL SMAKEHR(0x1109) // NULL data value.
  89. #define CLDB_E_SMDUPLICATE EMAKEHR(0x110A) // Create of shared memory failed. A memory mapping of the same name already exists.
  90. #define CLDB_E_NO_DATA EMAKEHR(0x110B) // There isn't .CLB data in the memory or stream.
  91. #define CLDB_E_READONLY EMAKEHR(0x110C) // Database is read only.
  92. #define CLDB_E_INCOMPATIBLE EMAKEHR(0x110D) // The importing scope is not comptabile with the emitting scope
  93. //**** Schema errors.
  94. #define CLDB_E_FILE_CORRUPT EMAKEHR(0x110E) // File is corrupt.
  95. #define CLDB_E_SCHEMA_VERNOTFOUND EMAKEHR(0x110F) // Version %d of schema '%s' not found.
  96. #define CLDB_E_BADUPDATEMODE EMAKEHR(0x1110) // cannot open a incrementally build scope for full update
  97. //**** Index errors.
  98. #define CLDB_E_INDEX_NONULLKEYS EMAKEHR(0x1121) // Null value not allowed in unique index or primary key.
  99. #define CLDB_E_INDEX_DUPLICATE EMAKEHR(0x1122) // Unique index %s has been violated.
  100. #define CLDB_E_INDEX_BADTYPE EMAKEHR(0x1123) // The columns data type is not allowed in an index.
  101. #define CLDB_E_INDEX_NOTFOUND EMAKEHR(0x1124) // Index %s not found.
  102. #define CLDB_S_INDEX_TABLESCANREQUIRED SMAKEHR(0x1125) // Table scan required to run query.
  103. //**** Record errors.
  104. #define CLDB_E_RECORD_NOTFOUND EMAKEHR(0x1130) // Record wasn't found on lookup.
  105. #define CLDB_E_RECORD_OVERFLOW EMAKEHR(0x1131) // Too many records were returned for criteria.
  106. #define CLDB_E_RECORD_DUPLICATE EMAKEHR(0x1132) // Record is a duplicate.
  107. #define CLDB_E_RECORD_PKREQUIRED EMAKEHR(0x1133) // Primary key value is required.
  108. #define CLDB_E_RECORD_DELETED EMAKEHR(0x1134) // Record is valid but deleted.
  109. #define CLDB_E_RECORD_OUTOFORDER EMAKEHR(0x1135) // Record is emitted out of order.
  110. //**** Column errors.
  111. #define CLDB_E_COLUMN_OVERFLOW EMAKEHR(0x1140) // Data too large.
  112. #define CLDB_E_COLUMN_READONLY EMAKEHR(0x1141) // Column cannot be changed.
  113. #define CLDB_E_COLUMN_SPECIALCOL EMAKEHR(0x1142) // Too many RID or primary key columns, 1 is max.
  114. #define CLDB_E_COLUMN_PKNONULLS EMAKEHR(0x1143) // Primary key column %s may not allow the null value.
  115. //**** Table errors.
  116. #define CLDB_E_TABLE_CANTDROP EMAKEHR(0x1150) // Can't auto-drop table while open.
  117. //**** Object errors.
  118. #define CLDB_E_OBJECT_NOTFOUND EMAKEHR(0x1151) // Object was not found in the database.
  119. #define CLDB_E_OBJECT_COLNOTFOUND EMAKEHR(0x1152) // The column was not found.
  120. //**** Vector errors.
  121. #define CLDB_E_VECTOR_BADINDEX EMAKEHR(0x1153) // The index given was invalid.
  122. //**** Heap errors;
  123. #define CLDB_E_TOO_BIG EMAKEHR(0x1154) // A blob or string was too big.
  124. //**** IMeta* errors.
  125. #define META_E_DUPLICATE EMAKEHR(0x1180) // Attempt to define an object that already exists.
  126. #define META_E_GUID_REQUIRED EMAKEHR(0x1181) // A guid was not provided where one was required.
  127. #define META_E_TYPEDEF_MISMATCH EMAKEHR(0x1182) // Merge: an import typedef matched ns.name, but not version and guid.
  128. #define META_E_MERGE_COLLISION EMAKEHR(0x1183) // Merge: conflict between import and emit
  129. #define META_E_METHD_NOT_FOUND EMAKEHR(0x1187) // Merge: Class already in emit scope, but member not found
  130. #define META_E_FIELD_NOT_FOUND EMAKEHR(0x1188) // Merge: Class already in emit scope, but member not found
  131. #define META_S_PARAM_MISMATCH SMAKEHR(0x1189) // Merge: Parameter information mismatched.
  132. #define META_E_PARAM_MISMATCH EMAKEHR(0x1189) // Merge: Parameter information mismatched.
  133. #define META_E_BADMETADATA EMAKEHR(0x118A) // Merge: Inconsistency in meta data import scope
  134. #define META_E_INTFCEIMPL_NOT_FOUND EMAKEHR(0x118B) // Merge: Class already in emit scope, but interfaceimpl not found
  135. #define META_E_CLASS_LAYOUT_INCONSISTENT EMAKEHR(0x118D) // Merge: Class is duplicated but class layout information is not consistent
  136. #define META_E_FIELD_MARSHAL_NOT_FOUND EMAKEHR(0x118E) // Merge: Field is duplicated but we cannot find the matching FieldMarshal information
  137. #define META_E_METHODSEM_NOT_FOUND EMAKEHR(0x118F) // Merge:
  138. #define META_E_EVENT_NOT_FOUND EMAKEHR(0x1190) // Merge: Method is duplicated but we cannot find the matching event info.
  139. #define META_E_PROP_NOT_FOUND EMAKEHR(0x1191) // Merge: Method is duplicated but we cannot find the maching property info.
  140. #define META_E_BAD_SIGNATURE EMAKEHR(0x1192) // Bad binary signature
  141. #define META_E_BAD_INPUT_PARAMETER EMAKEHR(0x1193) // Bad input parameters
  142. #define META_E_METHDIMPL_INCONSISTENT EMAKEHR(0x1194) // Merge: duplicated methods have inconsistent ImplFlags
  143. #define META_E_MD_INCONSISTENCY EMAKEHR(0x1195) // Merge: Inconsistency in meta data
  144. #define META_E_CANNOTRESOLVETYPEREF EMAKEHR(0x1196) // Cannot resolve typeref
  145. #define META_S_DUPLICATE SMAKEHR(0x1197) // Attempt to define an object that already exists in valid scenerios.
  146. #define META_E_STRINGSPACE_FULL EMAKEHR(0x1198) // No logical space left to create more user strings.
  147. #define META_E_UNEXPECTED_REMAP EMAKEHR(0x1199) // A TokenRemap occurred which we weren't prepared to handle.
  148. #define META_E_HAS_UNMARKALL EMAKEHR(0x119A) // Unmark all has been called already
  149. #define META_E_MUST_CALL_UNMARKALL EMAKEHR(0x119B) // Must call UnmarkAll first before marking.
  150. #define TLBX_E_CANT_LOAD_MODULE EMAKEHR(0x11A0) // TypeLib export: can't open the module to export.
  151. #define TLBX_E_CANT_LOAD_CLASS EMAKEHR(0x11A1) // TypeLib export: can't load a class.
  152. #define TLBX_E_NULL_MODULE EMAKEHR(0x11A2) // TypeLib export: the hMod of a loaded class is 0; can't export it.
  153. #define TLBX_E_NO_CLSID_KEY EMAKEHR(0x11A3) // TypeLib export: no CLSID or Interface subkey to HKCR.
  154. #define TLBX_E_CIRCULAR_EXPORT EMAKEHR(0x11A4) // TypeLib export: attempt to export a CLB imported from a TLB.
  155. #define TLBX_E_CIRCULAR_IMPORT EMAKEHR(0x11A5) // TypeLib import: attempt to import a TLB exported from a CLB.
  156. #define TLBX_E_BAD_NATIVETYPE EMAKEHR(0x11A6) // TypeLib export: bad Native type in method signature.
  157. #define TLBX_E_BAD_VTABLE EMAKEHR(0x11A7) // TypeLib import: non-increasing vtable (duplicate slots).
  158. #define TLBX_E_CRM_NON_STATIC EMAKEHR(0x11A8) // TypeLib export: the COM register method is non static.
  159. #define TLBX_E_CRM_INVALID_SIG EMAKEHR(0x11A9) // TypeLib export: the specified COM register method does not have the correct signature.
  160. #define TLBX_E_CLASS_LOAD_EXCEPTION EMAKEHR(0x11AA) // TypeLib export: can't load, have the class load exception.
  161. #define TLBX_E_UNKNOWN_SIGNATURE EMAKEHR(0x11AB) // TypeLib export: unknown element in signature.
  162. #define TLBX_E_REFERENCED_TYPELIB EMAKEHR(0x11AC) // TypeLib import: reference to an external typelib.
  163. #define TLBX_S_REFERENCED_TYPELIB SMAKEHR(0x11AC) // TypeLib import: reference to an external typelib.
  164. #define TLBX_E_INVALID_NAMESPACE EMAKEHR(0x11AD) // TypeLib import: an imported typelib has an invalid namespace name.
  165. #define TLBX_E_LAYOUT_ERROR EMAKEHR(0x11AE) // Typelib export: an error on Layout()
  166. #define TLBX_E_NOTIUNKNOWN EMAKEHR(0x11AF) // Typelib import: Interface not derived from IUnknown.
  167. #define TLBX_E_NONVISIBLEVALUECLASS EMAKEHR(0x11B0) // Typelib export: Non COM visible value type in method signature.
  168. #define TLBX_E_LPTSTR_NOT_ALLOWED EMAKEHR(0x11B1) // Typelib export: Types which contain the native type NATIVE_TYPE_LPTSTR are not allowed to be exported to COM.
  169. #define TLBX_E_AUTO_CS_NOT_ALLOWED EMAKEHR(0x11B2) // Typelib export: Types with a char set of auto are not allowed to be exported to COM.
  170. #define TLBX_S_NOSTDINTERFACE SMAKEHR(0x11B3) // Typelib export: Found an interface marked as IID_IDispatch or IID_IUnknown.
  171. #define TLBX_S_DUPLICATE_DISPID SMAKEHR(0x11B4) // Typelib export: duplicate dispid found; ignored.
  172. #define TLBX_E_ENUM_VALUE_INVALID EMAKEHR(0x11B5) // Typelib export: The enum value is not legal for a typelib.
  173. #define TLBX_E_DUPLICATE_IID EMAKEHR(0x11B6) // Typelib export: Duplicate IID
  174. #define TLBX_E_NO_NESTED_ARRAYS EMAKEHR(0x11B7) // Tyeplib export: detected nested arrays.
  175. #define TLBX_E_PARAM_ERROR_NAMED EMAKEHR(0x11B8) // Typelib import: param type couldn't be converted.
  176. #define TLBX_E_PARAM_ERROR_UNNAMED EMAKEHR(0x11B9) // Typelib import: param type couldn't be converted -- param name unknown.
  177. #define TLBX_E_AGNOST_SIGNATURE EMAKEHR(0x11BA) // TypeLib export: size agnostic element in signature.
  178. #define TLBX_E_CONVERT_FAIL EMAKEHR(0x11BB) // TypeLib export: exporter failed.
  179. #define TLBX_W_DUAL_NOT_DISPATCH EMAKEHR(0x11BC) // Typelib import: [dual] interface not derived from IDispatch.
  180. #define TLBX_E_BAD_SIGNATURE EMAKEHR(0x11BD) // Typelib export: unconvertable signature (use specific error for reporting!)
  181. #define TLBX_E_ARRAY_NEEDS_NT_FIXED EMAKEHR(0x11BE) // Typelib export: non-fixed array in struct
  182. #define TLBX_E_CLASS_NEEDS_NT_INTF EMAKEHR(0x11BF) // Typelib export: non-interface class in struct
  183. #define TLBX_E_INVALID_TYPEINFO EMAKEHR(0x1160) // Typelib import: invalid type, not converted.
  184. #define TLBX_E_INVALID_TYPEINFO_UNNAMED EMAKEHR(0x1161) // Typelib import: invalid type, not converted -- name unknown.
  185. #define TLBX_E_CTX_NESTED EMAKEHR(0x1162) // Typelib export: Format string for nested contexts.
  186. #define TLBX_E_ERROR_MESSAGE EMAKEHR(0x1163) // Typelib export: Error message wrapper.
  187. #define TLBX_E_CANT_SAVE EMAKEHR(0x1164) // Typelib export: cant "SaveAllChanges()"
  188. #define TLBX_W_LIBNOTREGISTERED EMAKEHR(0x1165) // Typelib export: type library is not registered.
  189. #define TLBX_E_CANTLOADLIBRARY EMAKEHR(0x1166) // Typelib export: type library cannot be loaded.
  190. #define TLBX_E_BAD_VT_TYPE EMAKEHR(0x1167) // Typelib import: invalid VT_*, not converted.
  191. #define TLBX_E_NO_MSCOREE_TLB EMAKEHR(0x1168) // Typelib export: can't load mscoree.tlb
  192. #define TLBX_E_BAD_MSCOREE_TLB EMAKEHR(0x1169) // Typelib export: can't get a required typeinfo from mscoree.tlb.
  193. #define TLBX_E_TLB_EXCEPTION EMAKEHR(0x116a) // Typelib import: fault reading a typelib.
  194. #define TLBX_E_MULTIPLE_LCIDS EMAKEHR(0x116b) // Typelib import: Multiple LCID's parameters on a method.
  195. #define TLBX_I_TYPEINFO_IMPORTED SMAKEHR(0x116c) // Typelib import: progress report.
  196. #define TLBX_E_AMBIGUOUS_RETURN EMAKEHR(0x116d) // Typelib import: duplicate or ambiguous return types.
  197. #define TLBX_E_DUPLICATE_TYPE_NAME EMAKEHR(0x116e) // Typelib import: duplicate name (due to user-defined name).
  198. #define TLBX_I_USEIUNKNOWN SMAKEHR(0x116f) // Typelib export: substituted IUnknown for type.
  199. #define TLBX_I_UNCONVERTABLE_ARGS SMAKEHR(0x1170) // Typelib import: signature can't be converted (eg, struct**)
  200. #define TLBX_I_UNCONVERTABLE_FIELD SMAKEHR(0x1171) // Typelib import: signature can't be converted (eg, struct**)
  201. #define TLBX_I_NONSEQUENTIALSTRUCT EMAKEHR(0x1172) // Typelib export: Can't convert non-sequential structs.
  202. #define TLBX_W_WARNING_MESSAGE SMAKEHR(0x1173) // Typelib export: Warning message wrapper.
  203. #define TLBX_I_RESOLVEREFFAILED EMAKEHR(0x1174) // Typelib import: The resolve ref call failed.
  204. #define TLBX_E_ASANY EMAKEHR(0x1175) // Typelib export: Encounterd "AsAny" -- ignored.
  205. #define TLBX_E_INVALIDLCIDPARAM EMAKEHR(0x1176) // Typelib export: Encounterd an LCID attribute set to an invalid param.
  206. #define TLBX_E_LCIDONDISPONLYITF EMAKEHR(0x1177) // Typelib export: Encounterd an LCID attribute on a disp only interface.
  207. #define TLBX_E_NONPUBLIC_FIELD EMAKEHR(0x1178) // Typelib export: Non-public field in public struct.
  208. #define TLBX_I_TYPE_EXPORTED SMAKEHR(0x1179) // Typelib export: type exported
  209. #define TLBX_I_DUPLICATE_DISPID SMAKEHR(0x117A) // Typelib export: duplicate dispid -- auto corrected.
  210. #define TLBX_E_BAD_NAMES EMAKEHR(0x117B) // Typelib export: bad names list.
  211. #define TLBX_I_REF_TYPE_AS_STRUCT SMAKEHR(0x117C) // Typelib export: referenct tyep had layout, exported as struct.
  212. #define META_E_CA_INVALID_TARGET EMAKEHR(0x11C0) // Known custom attribute on invalid target.
  213. #define META_E_CA_INVALID_VALUE EMAKEHR(0x11C1) // Known custom attribute had invalid value.
  214. #define META_E_CA_INVALID_BLOB EMAKEHR(0x11C2) // Known custom attribute blob is bad format.
  215. #define META_E_CA_REPEATED_ARG EMAKEHR(0x11C3) // Known custom attribute blob has repeated named argument.
  216. #define META_E_CA_UNKNOWN_ARGUMENT EMAKEHR(0x11C4) // Known custom attrubte named arg not recognized.
  217. #define META_E_CA_VARIANT_NYI EMAKEHR(0x11C5) // Known attribute named argument doesn't support variant.
  218. #define META_E_CA_ARRAY_NYI EMAKEHR(0x11C6) // Known attribute named argument doesn't support array.
  219. #define META_E_CA_UNEXPECTED_TYPE EMAKEHR(0x11C7) // Known attribute parser found unexpected type.
  220. #define META_E_CA_INVALID_ARGTYPE EMAKEHR(0x11C8) // Known attribute parser only handles fields -- no properties.
  221. #define META_E_CA_INVALID_ARG_FOR_TYPE EMAKEHR(0x11C9) // Known attribute parser found an argument that is invalid for the object it is applied to.
  222. #define META_E_CA_INVALID_UUID EMAKEHR(0x11CA) // The format of the UUID was invalid.
  223. #define META_E_CA_INVALID_MARSHALAS_FIELDS EMAKEHR(0x11CB) // The MarshalAs attribute has fields set that are not valid for the specified unmanaged type.
  224. #define META_E_CA_NT_FIELDONLY EMAKEHR(0x11CC) // The specified unmanaged type is only valid on fields.
  225. #define META_E_CA_NEGATIVE_PARAMINDEX EMAKEHR(0x11CD) // The parameter index cannot be negative.
  226. #define META_E_CA_NEGATIVE_MULTIPLIER EMAKEHR(0x11CE) // The multiplier cannot be negative.
  227. #define META_E_CA_NEGATIVE_CONSTSIZE EMAKEHR(0x11CF) // The constant size cannot be negative.
  228. #define META_E_CA_FIXEDSTR_SIZE_REQUIRED EMAKEHR(0x11D0) // A fixed string requires a size.
  229. #define META_E_CA_CUSTMARSH_TYPE_REQUIRED EMAKEHR(0x11D1) // A custom marshaler requires the custom marshaler type.
  230. #define META_E_CA_FILENAME_REQUIRED EMAKEHR(0x11d2) // A DllImport attribute requires a filename.
  231. // Return values from validator functions.
  232. #define VLDTR_S_WRN SMAKEHR(0x1200) // Warnings found in the validator.
  233. #define VLDTR_S_ERR SMAKEHR(0x1201) // Errors found in the validator.
  234. #define VLDTR_S_WRNERR SMAKEHR(0x1202) // Warnings and errors found in the validator.
  235. // Validator structural errors.
  236. #define VLDTR_E_RID_OUTOFRANGE EMAKEHR(0x1203) // Rid is out of range.
  237. #define VLDTR_E_CDTKN_OUTOFRANGE EMAKEHR(0x1204) // Coded token type is out of range.
  238. #define VLDTR_E_CDRID_OUTOFRANGE EMAKEHR(0x1205) // Coded rid is out of range.
  239. #define VLDTR_E_STRING_INVALID EMAKEHR(0x1206) // String offset is invalid.
  240. #define VLDTR_E_GUID_INVALID EMAKEHR(0x1207) // GUID offset is invalid.
  241. #define VLDTR_E_BLOB_INVALID EMAKEHR(0x1208) // Blob offset if invalid.
  242. // Validator semantic errors.
  243. #define VLDTR_E_MOD_MULTI EMAKEHR(0x1209) // Multiple module records found.
  244. #define VLDTR_E_MOD_NULLMVID EMAKEHR(0x120A) // Module has null MVID.
  245. #define VLDTR_E_TR_NAMENULL EMAKEHR(0x120B) // TypeRef name is NULL.
  246. #define VLDTR_E_TR_DUP EMAKEHR(0x120C) // TypeRef has a dup.
  247. #define VLDTR_E_TD_NAMENULL EMAKEHR(0x120D) // TypeDef name is NULL.
  248. #define VLDTR_E_TD_DUPNAME EMAKEHR(0x120E) // TypeDef has a dup based on name+namespace.
  249. #define VLDTR_E_TD_DUPGUID EMAKEHR(0x120F) // TypeDef has a dup based on GUID.
  250. #define VLDTR_E_TD_NOTIFACEOBJEXTNULL EMAKEHR(0x1210) // TypeDef that's not an Interface and not System.Object extends nil parent.
  251. #define VLDTR_E_TD_OBJEXTENDSNONNULL EMAKEHR(0x1211) // System.Object extends a non-nil parent.
  252. #define VLDTR_E_TD_EXTENDSSEALED EMAKEHR(0x1212) // TypeDef extends sealed class.
  253. #define VLDTR_E_TD_DLTNORTSPCL EMAKEHR(0x1213) // TypeDef is Deleted but not marked with RTSpecialName.
  254. #define VLDTR_E_TD_RTSPCLNOTDLT EMAKEHR(0x1214) // TypeDef is marked RTSpecialName, but is not a Deleted record.
  255. #define VLDTR_E_MI_DECLPRIV EMAKEHR(0x1215) // MethodImpl's Decl is private
  256. #define VLDTR_E_AS_BADNAME EMAKEHR(0x1216) // Assembly [Ref] name has path and/or extension.
  257. #define VLDTR_E_FILE_SYSNAME EMAKEHR(0x1217) // File has a system name (con, com, aux, etc.).
  258. #define VLDTR_E_MI_BODYSTATIC EMAKEHR(0x1218) // MethodImpl's body is static.
  259. #define VLDTR_E_TD_IFACENOTABS EMAKEHR(0x1219) // TypeDef is marked Interface but not Abstract.
  260. #define VLDTR_E_TD_IFACEPARNOTNIL EMAKEHR(0x121A) // TypeDef is marked Interface but parent is not Nil.
  261. #define VLDTR_E_TD_IFACEGUIDNULL EMAKEHR(0x121B) // TypeDef is marked Interface but GUID is NULL.
  262. #define VLDTR_E_MI_DECLFINAL EMAKEHR(0x121C) // TMethodImpl's Decl is final.
  263. #define VLDTR_E_TD_VTNOTSEAL EMAKEHR(0x121D) // TypeDef is marked ValueType but not marked Sealed.
  264. #define VLDTR_E_PD_BADFLAGS EMAKEHR(0x121E) // Param has extra bits in flags.
  265. #define VLDTR_E_IFACE_DUP EMAKEHR(0x121F) // InterfaceImpl has a dup.
  266. #define VLDTR_E_MR_NAMENULL EMAKEHR(0x1220) // MemberRef name is NULL.
  267. #define VLDTR_E_MR_VTBLNAME EMAKEHR(0x1221) // MemberRef has an invalid name, _VtblGap*.
  268. #define VLDTR_E_MR_DELNAME EMAKEHR(0x1222) // MemberRef has an invalid name, _Deleted*.
  269. #define VLDTR_E_MR_PARNIL EMAKEHR(0x1223) // MemberRef parent Nil in a PE file.
  270. #define VLDTR_E_MR_BADCALLINGCONV EMAKEHR(0x1224) // MemberRef has invalid calling convention.
  271. #define VLDTR_E_MR_NOTVARARG EMAKEHR(0x1225) // MemberRef has Method parent but calling convention is not VARARG.
  272. #define VLDTR_E_MR_NAMEDIFF EMAKEHR(0x1226) // MemberRef name different from parent MethodDef.
  273. #define VLDTR_E_MR_SIGDIFF EMAKEHR(0x1227) // MemberRef signature different from parent MethodDef.
  274. #define VLDTR_E_MR_DUP EMAKEHR(0x1228) // MemberRef has a dup.
  275. #define VLDTR_E_CL_TDAUTO EMAKEHR(0x1229) // ClassLayout parent TypeDef is marked AutoLayout.
  276. #define VLDTR_E_CL_BADPCKSZ EMAKEHR(0x122A) // ClassLayout has bad PackingSize.
  277. #define VLDTR_E_CL_DUP EMAKEHR(0x122B) // ClassLayout has dup.
  278. #define VLDTR_E_FL_BADOFFSET EMAKEHR(0x122C) // FieldLayout2 has bad offset.
  279. #define VLDTR_E_FL_TDNIL EMAKEHR(0x122D) // FieldLayout2 has field with nil parent.
  280. #define VLDTR_E_FL_NOCL EMAKEHR(0x122E) // FieldLayout2 has no ClassLayout record.
  281. #define VLDTR_E_FL_TDNOTEXPLCT EMAKEHR(0x122F) // FieldLayout2 parent TypeDef is not marked with ExplicitLayout.
  282. #define VLDTR_E_FL_FLDSTATIC EMAKEHR(0x1230) // FieldLayout2 has field marked Static.
  283. #define VLDTR_E_FL_DUP EMAKEHR(0x1231) // FieldLayout2 has a dup.
  284. #define VLDTR_E_MODREF_NAMENULL EMAKEHR(0x1232) // ModuleRef name is NULL.
  285. #define VLDTR_E_MODREF_DUP EMAKEHR(0x1233) // ModuleRef has a dup.
  286. #define VLDTR_E_TR_BADSCOPE EMAKEHR(0x1234) // TypeRef has a bad resolution scope.
  287. #define VLDTR_E_TD_NESTEDNOENCL EMAKEHR(0x1235) // TypeDef marked nested has no encloser.
  288. #define VLDTR_E_TD_EXTTRRES EMAKEHR(0x1236) // TypeDef extends a TypeRef which resolves to a TypeDef in the same module.
  289. #define VLDTR_E_SIGNULL EMAKEHR(0x1237) // Signature specified is zero-sized.
  290. #define VLDTR_E_SIGNODATA EMAKEHR(0x1238) // Signature does not have enough data at specified byte.
  291. #define VLDTR_E_MD_BADCALLINGCONV EMAKEHR(0x1239) // Method signature has invalid calling convention.
  292. #define VLDTR_E_MD_THISSTATIC EMAKEHR(0x123A) // Method is marked static but has HASTHIS/EXPLICITTHIS set on the calling convention.
  293. #define VLDTR_E_MD_NOTTHISNOTSTATIC EMAKEHR(0x123B) // Method is not marked static but is not HASTHIS/EXPLICITTHIS.
  294. #define VLDTR_E_MD_NOARGCNT EMAKEHR(0x123C) // Method signature is missing the argument count.
  295. #define VLDTR_E_SIG_MISSELTYPE EMAKEHR(0x123D) // Signature missing element type.
  296. #define VLDTR_E_SIG_MISSTKN EMAKEHR(0x123E) // Signature missing token.
  297. #define VLDTR_E_SIG_TKNBAD EMAKEHR(0x123F) // Signature has bad token.
  298. #define VLDTR_E_SIG_MISSFPTR EMAKEHR(0x1240) // Signature is missing function pointer.
  299. #define VLDTR_E_SIG_MISSFPTRARGCNT EMAKEHR(0x1241) // Signature has function pointer missing argument count.
  300. #define VLDTR_E_SIG_MISSRANK EMAKEHR(0x1242) // Signature is missing rank specification.
  301. #define VLDTR_E_SIG_MISSNSIZE EMAKEHR(0x1243) // Signature is missing count of sized dimensions.
  302. #define VLDTR_E_SIG_MISSSIZE EMAKEHR(0x1244) // Signature is missing size of dimension.
  303. #define VLDTR_E_SIG_MISSNLBND EMAKEHR(0x1245) // Signature is missing count of lower bounds.
  304. #define VLDTR_E_SIG_MISSLBND EMAKEHR(0x1246) // Signature is missing a lower bound.
  305. #define VLDTR_E_SIG_BADELTYPE EMAKEHR(0x1247) // Signature has bad element type.
  306. #define VLDTR_E_SIG_MISSVASIZE EMAKEHR(0x1248) // Signature has value array missing size.
  307. #define VLDTR_E_FD_BADCALLINGCONV EMAKEHR(0x1249) // Field signature has invalid calling convention.
  308. #define VLDTR_E_MD_NAMENULL EMAKEHR(0x124A) // Method name is NULL.
  309. #define VLDTR_E_MD_PARNIL EMAKEHR(0x124B) // Method has parent NIL.
  310. #define VLDTR_E_MD_DUP EMAKEHR(0x124C) // Method has dup.
  311. #define VLDTR_E_FD_NAMENULL EMAKEHR(0x124D) // Field name is NULL.
  312. #define VLDTR_E_FD_PARNIL EMAKEHR(0x124E) // Field parent is Nil.
  313. #define VLDTR_E_FD_DUP EMAKEHR(0x124F) // Field has dup.
  314. #define VLDTR_E_AS_MULTI EMAKEHR(0x1250) // Multiple Assembly records found.
  315. #define VLDTR_E_AS_NAMENULL EMAKEHR(0x1251) // Assembly name is NULL.
  316. #define VLDTR_E_SIG_TOKTYPEMISMATCH EMAKEHR(0x1252) // E_T_VALUETYPE<class token> or E_T_CLASS<vtype token>.
  317. #define VLDTR_E_CL_TDINTF EMAKEHR(0x1253) // Class layout on an Interface.
  318. #define VLDTR_E_ASOS_OSPLTFRMIDINVAL EMAKEHR(0x1254) // AssemblyOS platform ID invalid.
  319. #define VLDTR_E_AR_NAMENULL EMAKEHR(0x1255) // AssemblyRef name is NULL.
  320. #define VLDTR_E_TD_ENCLNOTNESTED EMAKEHR(0x1256) // TypeDef not nested has encloser.
  321. #define VLDTR_E_AROS_OSPLTFRMIDINVAL EMAKEHR(0x1257) // AssemblyRefOS has invalid platform ID.
  322. #define VLDTR_E_FILE_NAMENULL EMAKEHR(0x1258) // File name is NULL.
  323. #define VLDTR_E_CT_NAMENULL EMAKEHR(0x1259) // ComType name is NULL.
  324. #define VLDTR_E_TD_EXTENDSCHILD EMAKEHR(0x125A) // TypeDef extends its own child.
  325. #define VLDTR_E_MAR_NAMENULL EMAKEHR(0x125B) // ManifestResource name is NULL.
  326. #define VLDTR_E_FILE_DUP EMAKEHR(0x125C) // File has dup.
  327. #define VLDTR_E_FILE_NAMEFULLQLFD EMAKEHR(0x125D) // File name is fully qualified.
  328. #define VLDTR_E_CT_DUP EMAKEHR(0x125E) // ComType has dup.
  329. #define VLDTR_E_MAR_DUP EMAKEHR(0x125F) // ManifestResource has dup.
  330. #define VLDTR_E_MAR_NOTPUBPRIV EMAKEHR(0x1260) // ManifestResource is neither Public not Private.
  331. #define VLDTR_E_TD_ENUMNOVALUE EMAKEHR(0x1261) // Enum has no "value__" field.
  332. #define VLDTR_E_TD_ENUMVALSTATIC EMAKEHR(0x1262) // Enum's "value__" field is static.
  333. #define VLDTR_E_TD_ENUMVALNOTSN EMAKEHR(0x1263) // Enum's "value__" field is not SpecialName.
  334. #define VLDTR_E_TD_ENUMFLDNOTST EMAKEHR(0x1264) // Enum's field is not static.
  335. #define VLDTR_E_TD_ENUMFLDNOTLIT EMAKEHR(0x1265) // Enum's field is not literal.
  336. #define VLDTR_E_TD_ENUMNOLITFLDS EMAKEHR(0x1266) // Enum has no literal fields.
  337. #define VLDTR_E_TD_ENUMFLDSIGMISMATCH EMAKEHR(0x1267) // Enum's field sig does not match value__ sig.
  338. #define VLDTR_E_TD_ENUMVALNOT1ST EMAKEHR(0x1268) // Enum's "value__" field is not first.
  339. #define VLDTR_E_FD_NOTVALUERTSN EMAKEHR(0x1269) // Field is RTSpecialName but name is not "value__".
  340. #define VLDTR_E_FD_VALUEPARNOTENUM EMAKEHR(0x126A) // Field "value__" in not Enum class.
  341. #define VLDTR_E_FD_INSTINIFACE EMAKEHR(0x126B) // Instance field in interface.
  342. #define VLDTR_E_FD_NOTPUBINIFACE EMAKEHR(0x126C) // Non-public field in interface.
  343. #define VLDTR_E_FMD_GLOBALNOTPUBPRIVSC EMAKEHR(0x126D) // Global field/method neither Public nor PrivateScope.
  344. #define VLDTR_E_FMD_GLOBALNOTSTATIC EMAKEHR(0x126E) // Global field/method not static.
  345. #define VLDTR_E_FD_GLOBALNORVA EMAKEHR(0x126F) // Global field has no RVA.
  346. #define VLDTR_E_MD_CTORZERORVA EMAKEHR(0x1270) // .ctor,.cctor has zero RVA.
  347. #define VLDTR_E_FD_MARKEDNOMARSHAL EMAKEHR(0x1271) // Field is marked marshaled but has no marshaling rec.
  348. #define VLDTR_E_FD_MARSHALNOTMARKED EMAKEHR(0x1272) // Field has marshaling rec but is not marked marshaled.
  349. #define VLDTR_E_FD_MARKEDNODEFLT EMAKEHR(0x1273) // Field is marked HasDefault but has no const value.
  350. #define VLDTR_E_FD_DEFLTNOTMARKED EMAKEHR(0x1274) // Field has const value rec but is not marked HasDefault.
  351. #define VLDTR_E_FMD_MARKEDNOSECUR EMAKEHR(0x1275) // Field/method is marked HasSecurity but has no security rec.
  352. #define VLDTR_E_FMD_SECURNOTMARKED EMAKEHR(0x1276) // Field/method has security rec but is not marked HasSecurity.
  353. #define VLDTR_E_FMD_PINVOKENOTSTATIC EMAKEHR(0x1277) // Field/method is PInvoke but is not marked Static.
  354. #define VLDTR_E_FMD_MARKEDNOPINVOKE EMAKEHR(0x1278) // Field/method is marked PInvoke but has no ImplMap.
  355. #define VLDTR_E_FMD_PINVOKENOTMARKED EMAKEHR(0x1279) // Field/method has ImplMap but is not marked PInvoke.
  356. #define VLDTR_E_FMD_BADIMPLMAP EMAKEHR(0x127A) // Field/method has invalid ImplMap
  357. #define VLDTR_E_IMAP_BADMODREF EMAKEHR(0x127B) // ImplMap has invalid ModuleRef
  358. #define VLDTR_E_IMAP_BADMEMBER EMAKEHR(0x127C) // ImplMap has invalid MemberForwarded
  359. #define VLDTR_E_IMAP_BADIMPORTNAME EMAKEHR(0x127D) // ImplMap has invalid ImportName
  360. #define VLDTR_E_IMAP_BADCALLCONV EMAKEHR(0x127E) // ImplMap has invalid call conv
  361. #define VLDTR_E_FMD_BADACCESSFLAG EMAKEHR(0x127F) // Field/method has invalid access flag
  362. #define VLDTR_E_FD_INITONLYANDLITERAL EMAKEHR(0x1280) // Field is InitOnly and Literal
  363. #define VLDTR_E_FD_LITERALNOTSTATIC EMAKEHR(0x1281) // Field is Literal but not Static
  364. #define VLDTR_E_FMD_RTSNNOTSN EMAKEHR(0x1282) // Field/method is RTSpec.Name but not Spec.Name
  365. #define VLDTR_E_MD_ABSTPARNOTABST EMAKEHR(0x1283) // Method is abstract, parent is not
  366. #define VLDTR_E_MD_NOTSTATABSTININTF EMAKEHR(0x1284) // Method not static or abstract in interface
  367. #define VLDTR_E_MD_NOTPUBININTF EMAKEHR(0x1285) // Method not public in interface
  368. #define VLDTR_E_MD_CTORININTF EMAKEHR(0x1286) // ctor in interface
  369. #define VLDTR_E_MD_GLOBALCTORCCTOR EMAKEHR(0x1287) // global ctor or cctor
  370. #define VLDTR_E_MD_CTORSTATIC EMAKEHR(0x1288) // static ctor
  371. #define VLDTR_E_MD_CTORNOTSNRTSN EMAKEHR(0x1289) // ctor,cctor not marked SpecialName,RTSpecialName
  372. #define VLDTR_E_MD_CTORVIRT EMAKEHR(0x128A) // virtual ctor,cctor
  373. #define VLDTR_E_MD_CTORABST EMAKEHR(0x128B) // abstract ctor,cctor
  374. #define VLDTR_E_MD_CCTORNOTSTATIC EMAKEHR(0x128C) // instance cctor
  375. #define VLDTR_E_MD_ZERORVA EMAKEHR(0x128D) // RVA=0, method not abstract or pinvoke or runtime, or reverse
  376. #define VLDTR_E_MD_FINNOTVIRT EMAKEHR(0x128E) // Method is final and not virtual
  377. #define VLDTR_E_MD_STATANDFINORVIRT EMAKEHR(0x128F) // Method is static and final or virtual
  378. #define VLDTR_E_MD_ABSTANDFINAL EMAKEHR(0x1290) // Method is abstract and final
  379. #define VLDTR_E_MD_ABSTANDIMPL EMAKEHR(0x1291) // Method is abstract and implemented
  380. #define VLDTR_E_MD_ABSTANDPINVOKE EMAKEHR(0x1292) // Method is abstract and pinvoke
  381. #define VLDTR_E_MD_ABSTNOTVIRT EMAKEHR(0x1293) // Method is abstract and not virtual
  382. #define VLDTR_E_MD_NOTABSTNOTIMPL EMAKEHR(0x1294) // Method is not abstract and not implemented
  383. #define VLDTR_E_MD_NOTABSTBADFLAGSRVA EMAKEHR(0x1295) // Method is not abstract and not (RVA!=0 or pinvoke or runtime)
  384. #define VLDTR_E_MD_PRIVSCOPENORVA EMAKEHR(0x1296) // Method is PrivateScope and has RVA==0
  385. #define VLDTR_E_MD_GLOBALABSTORVIRT EMAKEHR(0x1297) // Global method is abstract or virtual
  386. #define VLDTR_E_SIG_LONGFORM EMAKEHR(0x1298) // Signature uses long form
  387. #define VLDTR_E_MD_MULTIPLESEMANTICS EMAKEHR(0x1299) // Method has multiple semantics (warning)
  388. #define VLDTR_E_MD_INVALIDSEMANTICS EMAKEHR(0x129A) // Method has invalid semantics (not event or prop)
  389. #define VLDTR_E_MD_SEMANTICSNOTEXIST EMAKEHR(0x129B) // Method has semantics assoc that does not exist
  390. #define VLDTR_E_MI_DECLNOTVIRT EMAKEHR(0x129C) // MethodImpl's Decl is not virtual
  391. #define VLDTR_E_FMD_GLOBALITEM EMAKEHR(0x129D) // Global field/method (warning,CLS)
  392. #define VLDTR_E_MD_MULTSEMANTICFLAGS EMAKEHR(0x129E) // Method has multiple semantic flags set
  393. #define VLDTR_E_MD_NOSEMANTICFLAGS EMAKEHR(0x129F) // Method has no semantic flags set
  394. #define VLDTR_E_FD_FLDINIFACE EMAKEHR(0x12A0) // Field in Interface (warning, CLS)
  395. #define VLDTR_E_AS_HASHALGID EMAKEHR(0x12A1) // Unrecognized Hash Alg ID (warning)
  396. #define VLDTR_E_AS_PROCID EMAKEHR(0x12A2) // Unrecognized Processor ID in Assembly(warning)
  397. #define VLDTR_E_AR_PROCID EMAKEHR(0x12A3) // Unrecognized Processor ID in AssemblyRef(warning)
  398. #define VLDTR_E_CN_PARENTRANGE EMAKEHR(0x12A4) // Constant: parent token out of range
  399. #define VLDTR_E_AS_BADFLAGS EMAKEHR(0x12A5) // Invalid flags in Assembly
  400. #define VLDTR_E_TR_HASTYPEDEF EMAKEHR(0x12A6) // There is TypeDef with same name as TypeRef (warning)
  401. #define VLDTR_E_IFACE_BADIMPL EMAKEHR(0x12A7) // In InterfaceImpl, the implementing token is not TypeDef
  402. #define VLDTR_E_IFACE_BADIFACE EMAKEHR(0x12A8) // In InterfaceImpl, the implemented token is not TypeDef or TypeRef
  403. #define VLDTR_E_TD_SECURNOTMARKED EMAKEHR(0x12A9) // TypeDef has security rec but not marked HasSecurity
  404. #define VLDTR_E_TD_MARKEDNOSECUR EMAKEHR(0x12AA) // TypeDef marked HasSecurity but has no security rec
  405. #define VLDTR_E_MD_CCTORHASARGS EMAKEHR(0x12AB) // .cctor has arguments
  406. #define VLDTR_E_CT_BADIMPL EMAKEHR(0x12AC) // COMType has invalid Implementation
  407. #define VLDTR_E_MI_ALIENBODY EMAKEHR(0x12AD) // MethodImpl has body from other class
  408. #define VLDTR_E_MD_CCTORCALLCONV EMAKEHR(0x12AE) // .cctor has invalid calling convention
  409. #define VLDTR_E_MI_BADCLASS EMAKEHR(0x12AF) // MethodImpl has invalid Class token
  410. #define VLDTR_E_MI_CLASSISINTF EMAKEHR(0x12B0) // MethodImpl declared in Interface
  411. #define VLDTR_E_MI_BADDECL EMAKEHR(0x12B1) // MethodImpl has invalid MethodDeclaration token
  412. #define VLDTR_E_MI_BADBODY EMAKEHR(0x12B2) // MethodImpl has invalid MethodBody token
  413. #define VLDTR_E_MI_DUP EMAKEHR(0x12B3) // MethodImpl has duplicate
  414. #define VLDTR_E_FD_BADPARENT EMAKEHR(0x12B4) // Bad field parent
  415. #define VLDTR_E_MD_PARAMOUTOFSEQ EMAKEHR(0x12B5) // Param out of sequence (warning)
  416. #define VLDTR_E_MD_PARASEQTOOBIG EMAKEHR(0x12B6) // Param's sequence num exceeds num of args
  417. #define VLDTR_E_MD_PARMMARKEDNOMARSHAL EMAKEHR(0x12B7) // Param marked HasMarshal, has no marshaling info
  418. #define VLDTR_E_MD_PARMMARSHALNOTMARKED EMAKEHR(0x12B8) // Param has marshaling info, not marked HasMarshal
  419. #define VLDTR_E_MD_PARMMARKEDNODEFLT EMAKEHR(0x12BA) // Param marked HasDefault, has no const value
  420. #define VLDTR_E_MD_PARMDEFLTNOTMARKED EMAKEHR(0x12BB) // Param has const value, not marked HasDefault
  421. #define VLDTR_E_PR_BADSCOPE EMAKEHR(0x12BC) // Prop has invalid scope
  422. #define VLDTR_E_PR_NONAME EMAKEHR(0x12BD) // Prop has no name
  423. #define VLDTR_E_PR_NOSIG EMAKEHR(0x12BE) // Prop has no signature
  424. #define VLDTR_E_PR_DUP EMAKEHR(0x12BF) // Prop has a duplicate
  425. #define VLDTR_E_PR_BADCALLINGCONV EMAKEHR(0x12C0) // Prop has bad calling convention
  426. #define VLDTR_E_PR_MARKEDNODEFLT EMAKEHR(0x12C1) // Prop marked HasDefault, has no const value
  427. #define VLDTR_E_PR_DEFLTNOTMARKED EMAKEHR(0x12C2) // Prop has const value, not marked HasDefault
  428. #define VLDTR_E_PR_BADSEMANTICS EMAKEHR(0x12C3) // Prop has method not (Setter,Getter, or Other)
  429. #define VLDTR_E_PR_BADMETHOD EMAKEHR(0x12C4) // Prop has method with invalid token
  430. #define VLDTR_E_PR_ALIENMETHOD EMAKEHR(0x12C5) // Prop has method from another class
  431. #define VLDTR_E_CN_BLOBNOTNULL EMAKEHR(0x12C6) // Const has non-null blob when it should not
  432. #define VLDTR_E_CN_BLOBNULL EMAKEHR(0x12C7) // Const has null value blob
  433. #define VLDTR_E_EV_BADSCOPE EMAKEHR(0x12C8) // Event has invalid scope
  434. #define VLDTR_E_EV_NONAME EMAKEHR(0x12CA) // Event has no name
  435. #define VLDTR_E_EV_DUP EMAKEHR(0x12CB) // Event has a duplicate
  436. #define VLDTR_E_EV_BADEVTYPE EMAKEHR(0x12CC) // Event has invalid EventType
  437. #define VLDTR_E_EV_EVTYPENOTCLASS EMAKEHR(0x12CD) // Event's EventType is not a class
  438. #define VLDTR_E_EV_BADSEMANTICS EMAKEHR(0x12CE) // Event has method not (AddOn,RemoveOn,Fire,Other)
  439. #define VLDTR_E_EV_BADMETHOD EMAKEHR(0x12CF) // Event has method with invalid token
  440. #define VLDTR_E_EV_ALIENMETHOD EMAKEHR(0x12D0) // Event has method from another class
  441. #define VLDTR_E_EV_NOADDON EMAKEHR(0x12D1) // Event has no AddOn method
  442. #define VLDTR_E_EV_NOREMOVEON EMAKEHR(0x12D2) // Event has no RemoveOn method
  443. #define VLDTR_E_CT_DUPTDNAME EMAKEHR(0x12D3) // ExportedType has same name as TypeDef
  444. #define VLDTR_E_MAR_BADOFFSET EMAKEHR(0x12D4) // MRes refers to non-PE file with offset !=0
  445. #define VLDTR_E_DS_BADOWNER EMAKEHR(0x12D5) // Decl.security has invalid owner token
  446. #define VLDTR_E_DS_BADFLAGS EMAKEHR(0x12D6) // Decl.security has invalid action flags
  447. #define VLDTR_E_DS_NOBLOB EMAKEHR(0x12D7) // Decl.security has no permission blob
  448. #define VLDTR_E_MAR_BADIMPL EMAKEHR(0x12D8) // Manifest resource has invalid Implementation
  449. #define VLDTR_E_MR_VARARGCALLINGCONV EMAKEHR(0x12DA) // MemberRef has VARARG calling conv. (CLS warning)
  450. #define VLDTR_E_MD_CTORNOTVOID EMAKEHR(0x12DB) // .ctor,.cctor returning not void
  451. #define VLDTR_E_EV_FIRENOTVOID EMAKEHR(0x12DC) // Fire method returning not void
  452. #define VLDTR_E_AS_BADLOCALE EMAKEHR(0x12DD) // Invalid locale
  453. #define VLDTR_E_CN_PARENTTYPE EMAKEHR(0x12DE) // Constant has parent of invalid type
  454. #define VLDTR_E_SIG_SENTINMETHODDEF EMAKEHR(0x12DF) // E_T_SENTINEL in MethodDef signature
  455. #define VLDTR_E_SIG_SENTMUSTVARARG EMAKEHR(0x12E0) // E_T_SENTINEL <=> VARARG
  456. #define VLDTR_E_SIG_MULTSENTINELS EMAKEHR(0x12E1) // Multiple E_T_SENTINELs
  457. #define VLDTR_E_SIG_LASTSENTINEL EMAKEHR(0x12E2) // E_T_SENTINEL not followed by type
  458. #define VLDTR_E_SIG_MISSARG EMAKEHR(0x12E3) // Signature missing argument
  459. #define VLDTR_E_SIG_BYREFINFIELD EMAKEHR(0x12E4) // Field of ByRef type
  460. #define VLDTR_E_MD_SYNCMETHODINVTYPE EMAKEHR(0x12E5) // Synchronized method in value class
  461. #define VLDTR_E_TD_NAMETOOLONG EMAKEHR(0x12E6) // TypeDef name too long
  462. #define VLDTR_E_AS_PROCDUP EMAKEHR(0x12E7) // Duplicate Assembly Processor
  463. #define VLDTR_E_ASOS_DUP EMAKEHR(0x12E8) // Duplicate Assembly OS (ID+ver.major+ver.minor)
  464. #define VLDTR_E_MAR_BADFLAGS EMAKEHR(0x12E9) // Manifest Resource has bad flags
  465. #define VLDTR_E_CT_NOTYPEDEFID EMAKEHR(0x12EA) // COMType has nil TypeDefId
  466. #define VLDTR_E_FILE_BADFLAGS EMAKEHR(0x12EB) // File has bad flags
  467. #define VLDTR_E_FILE_NULLHASH EMAKEHR(0x12EC) // File has no hash blob
  468. #define VLDTR_E_MOD_NONAME EMAKEHR(0x12ED) // Module has no name
  469. #define VLDTR_E_MOD_NAMEFULLQLFD EMAKEHR(0x12EE) // Module has fully-qualified name
  470. #define VLDTR_E_TD_RTSPCLNOTSPCL EMAKEHR(0x12EF) // TypeDef is tdRTSpecialName but not tdSpecialName
  471. #define VLDTR_E_TD_EXTENDSIFACE EMAKEHR(0x12F0) // TypeDef extends interface
  472. #define VLDTR_E_MD_CTORPINVOKE EMAKEHR(0x12F1) // .ctor,.cctor is PInvokeImpl
  473. #define VLDTR_E_TD_SYSENUMNOTCLASS EMAKEHR(0x12F2) // System.Enum is not a class
  474. #define VLDTR_E_TD_SYSENUMNOTEXTVTYPE EMAKEHR(0x12F3) // System.Enum extends not System.ValueType
  475. #define VLDTR_E_MI_SIGMISMATCH EMAKEHR(0x12F4) // MethodImpl's Decl and Body signatures mismatch
  476. #define VLDTR_E_TD_ENUMHASMETHODS EMAKEHR(0x12F5) // TypeDef extends System.Enum but has methods
  477. #define VLDTR_E_TD_ENUMIMPLIFACE EMAKEHR(0x12F6) // TypeDef extends System.Enum but impls interface(s)
  478. #define VLDTR_E_TD_ENUMHASPROP EMAKEHR(0x12F7) // TypeDef extends System.Enum but has prop(s)
  479. #define VLDTR_E_TD_ENUMHASEVENT EMAKEHR(0x12F8) // TypeDef extends System.Enum but has event(s)
  480. #define VLDTR_E_TD_BADMETHODLST EMAKEHR(0x12F9) // TypeDef has MethodList > Nmethods+1
  481. #define VLDTR_E_TD_BADFIELDLST EMAKEHR(0x12FA) // TypeDef has FieldList > Nfields+1
  482. #define VLDTR_E_CN_BADTYPE EMAKEHR(0x12FB) // Constant has wrong type
  483. #define VLDTR_E_TD_ENUMNOINSTFLD EMAKEHR(0x12FC) // Enum has no instance fields
  484. #define VLDTR_E_TD_ENUMMULINSTFLD EMAKEHR(0x12FD) // Enum has multiple instance fields
  485. #define VLDTR_E_INTERRUPTED EMAKEHR(0x12FE) // Validator has been interrupted by the VEHandler.
  486. #define VLDTR_E_NOTINIT EMAKEHR(0x12FF) // Validator failed to initialize correctly.
  487. #define VLDTR_E_IFACE_NOTIFACE EMAKEHR(0x1B00) // Interface in InterfaceImpl is not marked tdInterface
  488. #define VLDTR_E_FD_RVAHASNORVA EMAKEHR(0x1B01) // Field marked fdHasFieldRVA but has no RVA rec
  489. #define VLDTR_E_FD_RVAHASZERORVA EMAKEHR(0x1B02) // Field marked fdHasFieldRVA has RVA =0
  490. #define VLDTR_E_MD_RVAANDIMPLMAP EMAKEHR(0x1B03) // Method has both RVA !=0 and ImplMap
  491. #define VLDTR_E_TD_EXTRAFLAGS EMAKEHR(0x1B04) // TypeDef has extraneous bits in flags
  492. #define VLDTR_E_TD_EXTENDSITSELF EMAKEHR(0x1B05) // TypeDef extends itself
  493. #define VLDTR_E_TD_SYSVTNOTEXTOBJ EMAKEHR(0x1B06) // System.ValueType does not extend System.Object
  494. #define VLDTR_E_TD_EXTTYPESPEC EMAKEHR(0x1B07) // Class extends TypeSpec (warning)
  495. #define VLDTR_E_TD_VTNOSIZE EMAKEHR(0x1B09) // Value Class has zero size
  496. #define VLDTR_E_TD_IFACESEALED EMAKEHR(0x1B0A) // Interface is sealed
  497. #define VLDTR_E_NC_BADNESTED EMAKEHR(0x1B0B) // Bad "nested" token in NestedClass
  498. #define VLDTR_E_NC_BADENCLOSER EMAKEHR(0x1B0C) // Bad "enclosing" token in NestedClass
  499. #define VLDTR_E_NC_DUP EMAKEHR(0x1B0D) // Duplicate NestedClass record
  500. #define VLDTR_E_NC_DUPENCLOSER EMAKEHR(0x1B0E) // Duplicate NestedClass with different encloser
  501. #define VLDTR_E_FRVA_ZERORVA EMAKEHR(0x1B0F) // RVA=0 in FieldRVA record
  502. #define VLDTR_E_FRVA_BADFIELD EMAKEHR(0x1B10) // Invalid field token in FieldRVA record
  503. #define VLDTR_E_FRVA_DUPRVA EMAKEHR(0x1B11) // Duplicate RVA in FieldRVA record
  504. #define VLDTR_E_FRVA_DUPFIELD EMAKEHR(0x1B12) // Duplicate field in FieldRVA record
  505. #define VLDTR_E_EP_BADTOKEN EMAKEHR(0x1B13) // Bad token as entry point in CLR header
  506. #define VLDTR_E_EP_INSTANCE EMAKEHR(0x1B14) // Entry point in CLR header is a token of instance method
  507. #define VLDTR_E_TD_ENUMFLDBADTYPE EMAKEHR(0x1B15) // Enum has non-integral underlying type
  508. #define VLDTR_E_MD_BADRVA EMAKEHR(0x1B16) // Method has bogus RVA
  509. #define VLDTR_E_FD_LITERALNODEFAULT EMAKEHR(0x1B17) // Literal field has no const value
  510. #define VLDTR_E_IFACE_METHNOTIMPL EMAKEHR(0x1B18) // Class implementing an interface doesn't impl.one of methods
  511. #define VLDTR_E_CA_BADPARENT EMAKEHR(0x1B19) // CA has invalid owner
  512. #define VLDTR_E_CA_BADTYPE EMAKEHR(0x1B1A) // CA has invalid type
  513. #define VLDTR_E_CA_NOTCTOR EMAKEHR(0x1B1B) // CA type is not .ctor
  514. #define VLDTR_E_CA_BADSIG EMAKEHR(0x1B1C) // CA type has bad signature
  515. #define VLDTR_E_CA_NOSIG EMAKEHR(0x1B1D) // CA type has no signature
  516. #define VLDTR_E_CA_BADPROLOG EMAKEHR(0x1B1E) // CA blob has bad prolog (not 0x01 0x00)
  517. #define VLDTR_E_MD_BADLOCALSIGTOK EMAKEHR(0x1B1F) // Method has invalid LocalSig token
  518. #define VLDTR_E_MD_BADHEADER EMAKEHR(0x1B20) // Method has invalid header
  519. #define VLDTR_E_EP_TOOMANYARGS EMAKEHR(0x1B21) // Entry point has more than one arg
  520. #define VLDTR_E_EP_BADRET EMAKEHR(0x1B22) // Entry point has bad return type
  521. #define VLDTR_E_EP_BADARG EMAKEHR(0x1B23) // Entry point has bad argument
  522. #define VLDTR_E_SIG_BADVOID EMAKEHR(0x1B24) // Illegal "void" in signature
  523. //**** Common Language Runtime Debugging Services errors
  524. #define CORDBG_E_UNRECOVERABLE_ERROR EMAKEHR(0x1300) // Unrecoverable API error.
  525. #define CORDBG_E_PROCESS_TERMINATED EMAKEHR(0x1301) // Process was terminated.
  526. #define CORDBG_E_PROCESS_NOT_SYNCHRONIZED EMAKEHR(0x1302) // Process not synchronized.
  527. #define CORDBG_E_CLASS_NOT_LOADED EMAKEHR(0x1303) // A class is not loaded.
  528. #define CORDBG_E_IL_VAR_NOT_AVAILABLE EMAKEHR(0x1304) // An IL variable is not available at the
  529. // current native IP.
  530. #define CORDBG_E_BAD_REFERENCE_VALUE EMAKEHR(0x1305) // A reference value was found to be bad
  531. // during dereferencing.
  532. #define CORDBG_E_FIELD_NOT_AVAILABLE EMAKEHR(0x1306) // A field in a class is not available,
  533. // because the runtime optimized it away.
  534. #define CORDBG_E_NON_NATIVE_FRAME EMAKEHR(0x1307) // "Native frame only" operation on
  535. // non-native frame
  536. #define CORDBG_E_NONCONTINUABLE_EXCEPTION EMAKEHR(0x1308) // Continue on non-continuable exception
  537. #define CORDBG_E_CODE_NOT_AVAILABLE EMAKEHR(0x1309) // The code is currently unavailable
  538. #define CORDBG_E_FUNCTION_NOT_IL EMAKEHR(0x130A) // Attempt to get a ICorDebugFunction for
  539. // a function that is not IL.
  540. #define CORDBG_S_BAD_START_SEQUENCE_POINT SMAKEHR(0x130B) // Attempt to SetIP not at a sequence point
  541. #define CORDBG_S_BAD_END_SEQUENCE_POINT SMAKEHR(0x130C) // Attempt to SetIP when not going to a
  542. // sequence point. If both this and
  543. // CORDBG_E_BAD_START_SEQUENCE_POINT are
  544. // true, only CORDBG_E_BAD_START_SEQUENCE_POINT
  545. // will be reported.
  546. #define CORDBG_S_INSUFFICIENT_INFO_FOR_SET_IP SMAKEHR(0x130D) // SetIP is possible, but the debugger doesn't
  547. // have enough info to fix variable locations,
  548. // GC refs, or anything else. Use at your own
  549. // risk.
  550. #define CORDBG_E_CANT_SET_IP_INTO_FINALLY EMAKEHR(0x130E) // SetIP isn't possible, because SetIP would
  551. // move EIP from outside of an exception
  552. // handling finally clause to a point inside
  553. // of one.
  554. #define CORDBG_E_CANT_SET_IP_OUT_OF_FINALLY EMAKEHR(0x130F) // SetIP isn�t possible because it would move
  555. // EIP from within an exception handling finally
  556. // clause to a point outside of one.
  557. #define CORDBG_E_CANT_SET_IP_INTO_CATCH EMAKEHR(0x1310) // SetIP isn't possible, because SetIP would
  558. // move EIP from outside of an exception
  559. // handling catch clause to a point inside of
  560. // one.
  561. #define CORDBG_E_SET_IP_NOT_ALLOWED_ON_NONLEAF_FRAME EMAKEHR(0x1311) // Setip cannot be done on any frame except
  562. // the leaf frame.
  563. #define CORDBG_E_SET_IP_IMPOSSIBLE EMAKEHR(0x1312) // SetIP isn't allowed. For example, there is
  564. // insufficient memory to perform SetIP.
  565. #define CORDBG_E_FUNC_EVAL_BAD_START_POINT EMAKEHR(0x1313) // Func eval can't work if we're, for example,
  566. // not stopped at a GC safe point.
  567. #define CORDBG_E_INVALID_OBJECT EMAKEHR(0x1314) // This object value is no longer valid.
  568. #define CORDBG_E_FUNC_EVAL_NOT_COMPLETE EMAKEHR(0x1315) // If you call CordbEval::GetResult before the
  569. // func eval has finished, you'll get this
  570. // result.
  571. #define CORDBG_S_FUNC_EVAL_HAS_NO_RESULT SMAKEHR(0x1316) // Some Func evals will lack a return value,
  572. // such as those whose return type is void.
  573. #define CORDBG_S_VALUE_POINTS_TO_VOID SMAKEHR(0x1317) // The Debugging API doesn't support
  574. // dereferencing pointers of type void.
  575. #define CORDBG_E_INPROC_NOT_IMPL EMAKEHR(0x1318) // The inproc version of the debugging API
  576. // doesn't implement this function,
  577. #define CORDBG_S_FUNC_EVAL_ABORTED SMAKEHR(0x1319) // The func eval completed, but was aborted.
  578. #define CORDBG_E_STATIC_VAR_NOT_AVAILABLE EMAKEHR(0x131A) // A static variable isn't available because
  579. // it hasn't been initialized yet.
  580. #define CORDBG_E_OBJECT_IS_NOT_COPYABLE_VALUE_CLASS EMAKEHR(0x131B) // Can't copy a VC with object refs in it.
  581. #define CORDBG_E_CANT_SETIP_INTO_OR_OUT_OF_FILTER EMAKEHR(0x131C) // SetIP can't leave or enter a filter
  582. #define CORDBG_E_CANT_CHANGE_JIT_SETTING_FOR_ZAP_MODULE EMAKEHR(0x131D) // You can't change JIT settings for ZAP
  583. // modules.
  584. #define CORDBG_E_BAD_THREAD_STATE EMAKEHR(0x132d) // The state of the thread is invalid.
  585. #define CORDBG_E_DEBUGGER_ALREADY_ATTACHED EMAKEHR(0x132e) // This process has already been attached to
  586. #define CORDBG_E_SUPERFLOUS_CONTINUE EMAKEHR(0x132f) // Returned from a call to Continue that was
  587. // Not matched with a stopping event.
  588. #define CORDBG_E_SET_VALUE_NOT_ALLOWED_ON_NONLEAF_FRAME EMAKEHR(0x1330) // Can't perfrom SetValue on non-leaf frames.
  589. #define CORDBG_E_ENC_EH_MAX_NESTING_LEVEL_CANT_INCREASE EMAKEHR(0x1331) // When doing EnC, some JITters don't let you
  590. // increase the maximum level to which
  591. // exception handling can be nested.
  592. #define CORDBG_E_ENC_MODULE_NOT_ENC_ENABLED EMAKEHR(0x1332) // Tried to do EnC on a module that wasn't
  593. // started in EnC mode.
  594. #define CORDBG_E_SET_IP_NOT_ALLOWED_ON_EXCEPTION EMAKEHR(0x1333) // Setip cannot be done on any exception
  595. #define CORDBG_E_VARIABLE_IS_ACTUALLY_LITERAL EMAKEHR(0x1334) // The 'variable' doesn't exist because it is a
  596. // literal optimized away by the compiler - ask
  597. // Metadata for it's default value, instead.
  598. #define CORDBG_E_PROCESS_DETACHED EMAKEHR(0x1335) // Process has been detached from
  599. #define CORDBG_E_ENC_METHOD_SIG_CHANGED EMAKEHR(0x1336) // Not allowed to change the signature of an
  600. // existing method - compiler should make new method
  601. // instead.
  602. #define CORDBG_E_ENC_METHOD_NO_LOCAL_SIG EMAKEHR(0x1337) // Can't get the local signature for the method
  603. // we're trying to EnC.
  604. #define CORDBG_E_ENC_CANT_ADD_FIELD_TO_VALUECLASS EMAKEHR(0x1338) // Adding a field to a value class is prohibitted,
  605. // since we can't guarantee the new field is contiguous to
  606. // VC's on the stack, embedded in other objects, etc.
  607. #define CORDBG_E_ENC_CANT_CHANGE_FIELD EMAKEHR(0x1339) // Once you've got a field, you're not allowed to change
  608. // it, since that would change the size of the type it belongs to.
  609. #define CORDBG_E_ENC_RE_ADD_CLASS EMAKEHR(0x133A) // AddAvailableClassHaveLock will return this if we're trying to
  610. // to add a class that's been previously added. If we've got a
  611. // "delta-PE" that includes everything from the original PE, then
  612. // we can ignore this return value. It's the same as S_OK in that case.
  613. #define CORDBG_E_FIELD_NOT_STATIC EMAKEHR(0x133B) // Returned if someone tries to call GetStaticFieldValue
  614. // on a non-static field
  615. #define CORDBG_E_FIELD_NOT_INSTANCE EMAKEHR(0x133C) // Returned if someone tries to call GetStaticFieldValue
  616. // on a non-instance field
  617. #define CORDBG_E_ENC_ZAPPED_WITHOUT_ENC EMAKEHR(0x133D) // If a zap file was created without the EnC flag set, then
  618. // we can't do EnC on it, no matter what.
  619. #define CORDBG_E_ENC_BAD_METHOD_INFO EMAKEHR(0x133E) // Lacking information about method.
  620. #define CORDBG_E_ENC_JIT_CANT_UPDATE EMAKEHR(0x133F) // The JIT is unable to update the method.
  621. #define CORDBG_E_ENC_MISSING_CLASS EMAKEHR(0x1340) // An internal structure about the class is missing
  622. #define CORDBG_E_ENC_INTERNAL_ERROR EMAKEHR(0x1341) // Generic message for "Something user doesn't control went wrong" message.
  623. #define CORDBG_E_ENC_HANGING_FIELD EMAKEHR(0x1342) // The field was added via enc after the class was loaded, and so instead of
  624. // the field being contiguous with the other fields, it's 'hanging' off the
  625. // instance, so the right side will have to go & get (instance-specific
  626. // info based on the particular object.
  627. #define CORDBG_E_MODULE_NOT_LOADED EMAKEHR(0x1343) // If the module isn't loaded, including if it's been unloaded.
  628. #define CORDBG_E_ENC_CANT_CHANGE_SUPERCLASS EMAKEHR(0x1344) // Not allowed to change which class something inherits from
  629. #define CORDBG_E_UNABLE_TO_SET_BREAKPOINT EMAKEHR(0x1345) // Can't set a breakpoint here.
  630. #define CORDBG_E_DEBUGGING_NOT_POSSIBLE EMAKEHR(0x1346) // Debugging isn't possible due to an incompatability within the CLR implementation.
  631. #define CORDBG_E_KERNEL_DEBUGGER_ENABLED EMAKEHR(0x1347) // Debugging isn't possible because a kernel debugger is enabled on the system.
  632. #define CORDBG_E_KERNEL_DEBUGGER_PRESENT EMAKEHR(0x1348) // Debugging isn't possible because a kernel debugger is present on the system.
  633. #define CORDBG_E_HELPER_THREAD_DEAD EMAKEHR(0x1349) // The debugger's internal helper thread is dead.
  634. #define CORDBG_E_INTERFACE_INHERITANCE_CANT_CHANGE EMAKEHR(0x134A) // Not allowed to change interface inheritance.
  635. #define CORDBG_E_INCOMPATIBLE_PROTOCOL EMAKEHR(0x134B) // The debugger's protocol is incompatible with the debuggee.
  636. #define CORDBG_E_TOO_MANY_PROCESSES EMAKEHR(0x134C) // The debugger can only handle a finite number of debuggees.
  637. #define CORDBG_E_INTEROP_NOT_SUPPORTED EMAKEHR(0x134D) // Interop is not allowed on a win9x platform
  638. //**** Common Language Runtime Profiling Services errors
  639. #define CORPROF_E_FUNCTION_NOT_COMPILED EMAKEHR(0x1350) // Function not yet compiled.
  640. #define CORPROF_E_DATAINCOMPLETE EMAKEHR(0x1351) // The ID is not fully loaded/defined yet.
  641. #define CORPROF_E_NOT_REJITABLE_METHODS EMAKEHR(0x1352) // The Module is not configured for updateable methods.
  642. #define CORPROF_E_CANNOT_UPDATE_METHOD EMAKEHR(0x1353) // The Method could not be updated for re-jit.
  643. #define CORPROF_E_FUNCTION_NOT_IL EMAKEHR(0x1354) // The Method has no associated IL
  644. #define CORPROF_E_NOT_MANAGED_THREAD EMAKEHR(0x1355) // The thread has never run managed code before
  645. #define CORPROF_E_CALL_ONLY_FROM_INIT EMAKEHR(0x1356) // The function may only be called during profiler init
  646. #define CORPROF_E_INPROC_NOT_ENABLED EMAKEHR(0x1357) // Inprocess debugging must be enabled during init
  647. // Also returned when BeginInprocDebugging not called
  648. // before using the inprocess debugging services
  649. #define CORPROF_E_JITMAPS_NOT_ENABLED EMAKEHR(0x1358) // Can't get a JIT map becuase they are not enabled
  650. #define CORPROF_E_INPROC_ALREADY_BEGUN EMAKEHR(0x1359) // If a profiler tries to call BeginInprocDebugging more than
  651. // once, it will get this error.
  652. #define CORPROF_E_INPROC_NOT_AVAILABLE EMAKEHR(0x135A) // States that inprocess debugging not allowed at this point
  653. // (for example during GC callbacks or RuntimeSuspention callbacks
  654. #define CORPROF_E_NOT_YET_AVAILABLE EMAKEHR(0x135B) // This is a general error used to indicated that the information
  655. // requested is not yet available
  656. //**** Security errors
  657. #define SECURITY_E_XML_TO_ASN_ENCODING EMAKEHR(0x1400) // Failed to convert XML to ASN
  658. #define SECURITY_E_INCOMPATIBLE_SHARE EMAKEHR(0x1401) // Loading this assembly would produce a different grant set from other instances
  659. #define SECURITY_E_UNVERIFIABLE EMAKEHR(0x1402) // Unverifable code failed policy check
  660. #define SECURITY_E_INCOMPATIBLE_EVIDENCE EMAKEHR(0x1403) // Assembly already loaded without additional security evidence.
  661. //**** Reserved.
  662. #define CLDB_E_INTERNALERROR EMAKEHR(0x1fff)
  663. // ******************
  664. // Debugger & Profiler errors
  665. // ******************
  666. // ******************
  667. // Security errors
  668. // ******************
  669. #define CORSEC_E_DECODE_SET EMAKEHR(0x1410) // Failure decoding permission set
  670. #define CORSEC_E_ENCODE_SET EMAKEHR(0x1411) // Failure encoding permission set
  671. #define CORSEC_E_UNSUPPORTED_FORMAT EMAKEHR(0x1412) // Unrecognized encoding format
  672. #define SN_CRYPTOAPI_CALL_FAILED EMAKEHR(0x1413) // StrongName APIs not supported on system
  673. #define CORSEC_E_CRYPTOAPI_CALL_FAILED EMAKEHR(0x1413) // StrongName APIs not supported on system
  674. #define SN_NO_SUITABLE_CSP EMAKEHR(0x1414) // StrongName APIs couldn't locate a matching CSP
  675. #define CORSEC_E_NO_SUITABLE_CSP EMAKEHR(0x1414) // StrongName APIs couldn't locate a matching CSP
  676. #define CORSEC_E_INVALID_ATTR EMAKEHR(0x1415) // Invalid security custom attribute
  677. #define CORSEC_E_POLICY_EXCEPTION EMAKEHR(0x1416) // PolicyException thrown
  678. #define CORSEC_E_MIN_GRANT_FAIL EMAKEHR(0x1417) // Failed to grant minimum permission requests
  679. #define CORSEC_E_NO_EXEC_PERM EMAKEHR(0x1418) // Failed to grant permission to execute
  680. #define CORSEC_E_XMLSYNTAX EMAKEHR(0x1419) // XML Syntax error
  681. #define CORSEC_E_INVALID_STRONGNAME EMAKEHR(0x141a) // Strong name validation failed
  682. #define CORSEC_E_MISSING_STRONGNAME EMAKEHR(0x141b) // Assembly is not strong named
  683. #define CORSEC_E_CONTAINER_NOT_FOUND EMAKEHR(0x141c) // Strong name key container not found
  684. #define CORSEC_E_INVALID_IMAGE_FORMAT EMAKEHR(0x141d) // Invalid assembly file format
  685. //**** crypto errors 1430 -- 143f
  686. #define CORSEC_E_CRYPTO EMAKEHR(0x1430) // generic CryptographicException
  687. #define CORSEC_E_CRYPTO_UNEX_OPER EMAKEHR(0x1431) // generic CryptographicUnexpectedOperationException
  688. //**** security custom attribute errors 143d -- 144f
  689. #define CORSECATTR_E_BAD_ACTION_ASM EMAKEHR(0x143d) // SecurityAction type invalid on assembly
  690. #define CORSECATTR_E_BAD_ACTION_OTHER EMAKEHR(0x143e) // SecurityAction type invalid on types and methods
  691. #define CORSECATTR_E_BAD_PARENT EMAKEHR(0x143f) // Security custom attribute attached to invalid parent
  692. #define CORSECATTR_E_TRUNCATED EMAKEHR(0x1440) // Bad custom attribute serialized blob
  693. #define CORSECATTR_E_BAD_VERSION EMAKEHR(0x1441) // Bad custom attribute serialized blob version
  694. #define CORSECATTR_E_BAD_ACTION EMAKEHR(0x1442) // Invalid security action code
  695. #define CORSECATTR_E_NO_SELF_REF EMAKEHR(0x1443) // CA ref to CA def'd in same assembly
  696. #define CORSECATTR_E_BAD_NONCAS EMAKEHR(0x1444) // Use of non-CAS perm with invalid action
  697. #define CORSECATTR_E_ASSEMBLY_LOAD_FAILED EMAKEHR(0x1445) // Failed to load assembly containing CA (or req'd CA type)
  698. #define CORSECATTR_E_ASSEMBLY_LOAD_FAILED_EX EMAKEHR(0x1446) // Failed to load assembly containing CA (or req'd CA type)
  699. #define CORSECATTR_E_TYPE_LOAD_FAILED EMAKEHR(0x1447) // Failed to load CA type (or reqd CA type)
  700. #define CORSECATTR_E_TYPE_LOAD_FAILED_EX EMAKEHR(0x1448) // Failed to load CA type (or reqd CA type)
  701. #define CORSECATTR_E_ABSTRACT EMAKEHR(0x1449) // CA type is abstract
  702. #define CORSECATTR_E_UNSUPPORTED_TYPE EMAKEHR(0x144a) // Unsupported type for field/property setter
  703. #define CORSECATTR_E_UNSUPPORTED_ENUM_TYPE EMAKEHR(0x144b) // Unsupported base type for enum field/property
  704. #define CORSECATTR_E_NO_FIELD EMAKEHR(0x144c) // Couldn't find a CA field
  705. #define CORSECATTR_E_NO_PROPERTY EMAKEHR(0x144d) // Couldn't find a CA property
  706. #define CORSECATTR_E_EXCEPTION EMAKEHR(0x144e) // Unexpected exception
  707. #define CORSECATTR_E_EXCEPTION_HR EMAKEHR(0x144f) // Unexpected exception
  708. //**** Isolated Storage Errors 1450 - 14FF
  709. #define ISS_E_ISOSTORE EMAKEHR(0x1450L)
  710. #define ISS_E_OPEN_STORE_FILE EMAKEHR(0x1460L)
  711. #define ISS_E_OPEN_FILE_MAPPING EMAKEHR(0x1461L)
  712. #define ISS_E_MAP_VIEW_OF_FILE EMAKEHR(0x1462L)
  713. #define ISS_E_GET_FILE_SIZE EMAKEHR(0x1463L)
  714. #define ISS_E_CREATE_MUTEX EMAKEHR(0x1464L)
  715. #define ISS_E_LOCK_FAILED EMAKEHR(0x1465L)
  716. #define ISS_E_FILE_WRITE EMAKEHR(0x1466L)
  717. #define ISS_E_SET_FILE_POINTER EMAKEHR(0x1467L)
  718. #define ISS_E_CREATE_DIR EMAKEHR(0x1468L)
  719. #define ISS_E_STORE_NOT_OPEN EMAKEHR(0x1469L)
  720. #define ISS_E_CORRUPTED_STORE_FILE EMAKEHR(0x1480L)
  721. #define ISS_E_STORE_VERSION EMAKEHR(0x1481L)
  722. #define ISS_E_FILE_NOT_MAPPED EMAKEHR(0x1482L)
  723. #define ISS_E_BLOCK_SIZE_TOO_SMALL EMAKEHR(0x1483L)
  724. #define ISS_E_ALLOC_TOO_LARGE EMAKEHR(0x1484L)
  725. #define ISS_E_USAGE_WILL_EXCEED_QUOTA EMAKEHR(0x1485L)
  726. #define ISS_E_TABLE_ROW_NOT_FOUND EMAKEHR(0x1486L)
  727. #define ISS_E_DEPRECATE EMAKEHR(0x14A0L)
  728. #define ISS_E_CALLER EMAKEHR(0x14A1L)
  729. #define ISS_E_PATH_LENGTH EMAKEHR(0x14A2L)
  730. #define ISS_E_MACHINE EMAKEHR(0x14A3L)
  731. #define ISS_E_ISOSTORE_START EMAKEHR(0x1450L)
  732. #define ISS_E_ISOSTORE_END EMAKEHR(0x14FFL)
  733. // ******************
  734. // Classlib errors
  735. // ******************
  736. //
  737. // MessageId: COR_E_APPLICATION
  738. //
  739. // MessageText:
  740. //
  741. // The base class for all "less serious" exceptions.
  742. //
  743. #define COR_E_APPLICATION EMAKEHR(0x1600L)
  744. //
  745. // MessageId: COR_E_ARGUMENT
  746. //
  747. // MessageText:
  748. //
  749. // An argument does not meet the contract of the method.
  750. //
  751. #define COR_E_ARGUMENT E_INVALIDARG // 0x80070057
  752. //
  753. // MessageId: COR_E_ARGUMENTOUTOFRANGE
  754. //
  755. // MessageText:
  756. //
  757. // An argument was out of its legal range.
  758. //
  759. #define COR_E_ARGUMENTOUTOFRANGE EMAKEHR(0x1502L)
  760. //
  761. // MessageId: COR_E_ARITHMETIC
  762. //
  763. // MessageText:
  764. //
  765. // Overflow or underflow in mathematical operations.
  766. //
  767. #define COR_E_ARITHMETIC HRESULT_FROM_WIN32(ERROR_ARITHMETIC_OVERFLOW) // 0x80070216
  768. //
  769. // MessageId: COR_E_ARRAYTYPEMISMATCH
  770. //
  771. // MessageText:
  772. //
  773. // Attempted to store an object of the wrong type in an array
  774. //
  775. #define COR_E_ARRAYTYPEMISMATCH EMAKEHR(0x1503L)
  776. //
  777. // MessageId: COR_E_CONTEXTMARSHAL
  778. //
  779. // MessageText:
  780. //
  781. //
  782. //
  783. #define COR_E_CONTEXTMARSHAL EMAKEHR(0x1504L)
  784. //
  785. // MessageId: COR_E_DIVIDEBYZERO
  786. //
  787. // MessageText:
  788. //
  789. // Attempted to divide a number by zero.
  790. //
  791. #define COR_E_DIVIDEBYZERO DISP_E_DIVBYZERO
  792. //
  793. // MessageId: COR_E_EXCEPTION
  794. //
  795. // MessageText:
  796. //
  797. // Base class for all exceptions in the runtime
  798. //
  799. #define COR_E_EXCEPTION EMAKEHR(0x1500L)
  800. //
  801. // MessageId: COR_E_EXECUTIONENGINE
  802. //
  803. // MessageText:
  804. //
  805. // An internal error happened in the Common Language Runtime's Execution Engine
  806. //
  807. #define COR_E_EXECUTIONENGINE EMAKEHR(0x1506L)
  808. //
  809. // MessageId: COR_E_FIELDACCESS
  810. //
  811. // MessageText:
  812. //
  813. // Access to this field is denied.
  814. //
  815. #define COR_E_FIELDACCESS EMAKEHR(0x1507L)
  816. //
  817. // MessageId: COR_E_FORMAT
  818. //
  819. // MessageText:
  820. //
  821. // The format of one arguments does not meet the contract of the method.
  822. //
  823. #define COR_E_FORMAT EMAKEHR(0x1537L)
  824. //
  825. // MessageId: COR_E_BADIMAGEFORMAT
  826. //
  827. // MessageText:
  828. //
  829. // The format of DLL or executable being loaded is invalid.
  830. //
  831. #define COR_E_BADIMAGEFORMAT _HRESULT_TYPEDEF_(0x8007000BL)
  832. //
  833. // MessageId: COR_E_ASSEMBLYEXPECTED
  834. //
  835. // MessageText:
  836. //
  837. // The module was expected to contain an assembly manifest.
  838. //
  839. #define COR_E_ASSEMBLYEXPECTED EMAKEHR(0x1018L)
  840. //
  841. // MessageId: COR_E_TYPEUNLOADED
  842. //
  843. // MessageText:
  844. //
  845. // The type had been unloaded.
  846. //
  847. #define COR_E_TYPEUNLOADED EMAKEHR(0x1013L)
  848. //
  849. // MessageId: COR_E_INDEXOUTOFRANGE
  850. //
  851. // MessageText:
  852. //
  853. // Attempted to access an element within an array by using an index that is
  854. // not within the bound of that array.
  855. //
  856. #define COR_E_INDEXOUTOFRANGE EMAKEHR(0x1508L)
  857. //
  858. // MessageId: COR_E_INVALIDCAST
  859. //
  860. // MessageText:
  861. //
  862. // Indicates a bad cast condition
  863. //
  864. #define COR_E_INVALIDCAST E_NOINTERFACE // 0x80004002
  865. //
  866. // MessageId: COR_E_INVALIDOPERATION
  867. //
  868. // MessageText:
  869. //
  870. // An operation is not legal in the current state.
  871. //
  872. #define COR_E_INVALIDOPERATION EMAKEHR(0x1509L)
  873. //
  874. // MessageId: COR_E_INVALIDPROGRAM
  875. //
  876. // MessageText:
  877. //
  878. // A program contained invalid IL or bad metadata. Usually this is a compiler bug.
  879. //
  880. #define COR_E_INVALIDPROGRAM EMAKEHR(0x153AL)
  881. //
  882. // MessageId: COR_E_MEMBERACCESS
  883. //
  884. // MessageText:
  885. //
  886. // Access to this member is denied.
  887. //
  888. #define COR_E_MEMBERACCESS EMAKEHR(0x151AL)
  889. //
  890. // MessageId: COR_E_METHODACCESS
  891. //
  892. // MessageText:
  893. //
  894. // Access to this method is denied.
  895. //
  896. #define COR_E_METHODACCESS EMAKEHR(0x1510L)
  897. //
  898. // MessageId: COR_E_MISSINGFIELD
  899. //
  900. // MessageText:
  901. //
  902. // An attempt was made to dynamically access a field that does not exist.
  903. //
  904. #define COR_E_MISSINGFIELD EMAKEHR(0x1511L)
  905. //
  906. // MessageId: COR_E_MISSINGMANIFESTRESOURCE
  907. //
  908. // MessageText:
  909. //
  910. // An expected resource in the assembly manifest was missing.
  911. //
  912. #define COR_E_MISSINGMANIFESTRESOURCE EMAKEHR(0x1532L)
  913. //
  914. // MessageId: COR_E_MISSINGMEMBER
  915. //
  916. // MessageText:
  917. //
  918. // An attempt was made to dynamically invoke or access a field or method
  919. // that does not exist.
  920. //
  921. #define COR_E_MISSINGMEMBER EMAKEHR(0x1512L)
  922. //
  923. // MessageId: COR_E_MISSINGMETHOD
  924. //
  925. // MessageText:
  926. //
  927. // An attempt was made to dynamically invoke a method that does not exist
  928. //
  929. #define COR_E_MISSINGMETHOD EMAKEHR(0x1513L)
  930. //
  931. // MessageId: COR_E_MULTICASTNOTSUPPORTED
  932. //
  933. // MessageText:
  934. //
  935. // Attempted to combine delegates that are not multicast
  936. //
  937. #define COR_E_MULTICASTNOTSUPPORTED EMAKEHR(0x1514L)
  938. //
  939. // MessageId: COR_E_NOTFINITENUMBER
  940. //
  941. // MessageText:
  942. //
  943. // Thrown if value (a floating point number) is either the not a number value (NaN) or +- infinity value
  944. // VB needs this stuff
  945. #define COR_E_NOTFINITENUMBER EMAKEHR(0x1528L)
  946. //
  947. // MessageId: COR_E_DUPLICATEWAITOBJECT
  948. //
  949. // MessageText:
  950. //
  951. // An object appears more than once in the wait objects array.
  952. //
  953. #define COR_E_DUPLICATEWAITOBJECT EMAKEHR(0x1529L)
  954. //
  955. // MessageId: COR_E_PLATFORMNOTSUPPORTED
  956. //
  957. // MessageText:
  958. //
  959. // The method is not supported on this platform
  960. //
  961. #define COR_E_PLATFORMNOTSUPPORTED EMAKEHR(0x1539L)
  962. //
  963. // MessageId: COR_E_NOTSUPPORTED
  964. //
  965. // MessageText:
  966. //
  967. // The method is not supported
  968. //
  969. #define COR_E_NOTSUPPORTED EMAKEHR(0x1515L)
  970. //
  971. // MessageId: COR_E_NULLREFERENCE
  972. //
  973. // MessageText:
  974. //
  975. // Dereferencing a null reference. In general class libraries should not throw this
  976. //
  977. #define COR_E_NULLREFERENCE E_POINTER // 0x80004003
  978. //
  979. // MessageId: COR_E_OUTOFMEMORY
  980. //
  981. // MessageText:
  982. //
  983. // The EE thows this exception when no more memory is avaible to continue execution
  984. //
  985. #define COR_E_OUTOFMEMORY E_OUTOFMEMORY // 0x8007000E
  986. //
  987. // MessageId: COR_E_OVERFLOW
  988. //
  989. // MessageText:
  990. //
  991. // An arithmetic, casting, or conversion operation overflowed or underflowed.
  992. //
  993. #define COR_E_OVERFLOW EMAKEHR(0x1516L)
  994. //
  995. // MessageId: COR_E_RANK
  996. //
  997. // MessageText:
  998. //
  999. // An array has the wrong number of dimensions for a particular operation.
  1000. //
  1001. #define COR_E_RANK EMAKEHR(0x1517L)
  1002. //
  1003. // MessageId: COR_E_REMOTING
  1004. //
  1005. // MessageText:
  1006. //
  1007. // An error relating to remoting occurred.
  1008. //
  1009. #define COR_E_REMOTING EMAKEHR(0x150BL)
  1010. #define COR_E_SERVER EMAKEHR(0x150EL)
  1011. //
  1012. // MessageId: COR_E_SERVICEDCOMPONENT
  1013. //
  1014. // MessageText:
  1015. //
  1016. // An error relating to ServicedComponent occurred.
  1017. //
  1018. #define COR_E_SERVICEDCOMPONENT EMAKEHR(0x150FL)
  1019. //
  1020. // MessageId: COR_E_SECURITY
  1021. //
  1022. // MessageText:
  1023. //
  1024. // An error relating to security occured.
  1025. //
  1026. #define COR_E_SECURITY EMAKEHR(0x150AL)
  1027. //
  1028. // MessageID: COR_E_SERIALIZATION
  1029. //
  1030. // MessageText:
  1031. //
  1032. // An error relating to serialization has occurred.
  1033. //
  1034. #define COR_E_SERIALIZATION EMAKEHR(0x150CL)
  1035. //
  1036. // MessageId: COR_E_STACKOVERFLOW
  1037. //
  1038. // MessageText:
  1039. //
  1040. // Is raised by the EE when the execution stack overflows as it is attempting to ex
  1041. //
  1042. #define COR_E_STACKOVERFLOW HRESULT_FROM_WIN32(ERROR_STACK_OVERFLOW) // 0x800703E9
  1043. //
  1044. // MessageId: COR_E_SYNCHRONIZATIONLOCK
  1045. //
  1046. // MessageText:
  1047. //
  1048. // Wait(), Notify() or NotifyAll() was called from an unsynchronized ** block of c
  1049. //
  1050. #define COR_E_SYNCHRONIZATIONLOCK EMAKEHR(0x1518L)
  1051. //
  1052. // MessageId: COR_E_SYSTEM
  1053. //
  1054. // MessageText:
  1055. //
  1056. // The base class for the runtime's "less serious" exceptions
  1057. //
  1058. #define COR_E_SYSTEM EMAKEHR(0x1501L)
  1059. //
  1060. // MessageId: COR_E_THREADABORTED
  1061. //
  1062. // MessageText:
  1063. //
  1064. // Thrown into a thread to cause it to abort. Not catchable.
  1065. //
  1066. #define COR_E_THREADABORTED EMAKEHR(0x1530L)
  1067. //
  1068. // MessageId: COR_E_THREADINTERRUPTED
  1069. //
  1070. // MessageText:
  1071. //
  1072. // Indicates that the thread was interrupted from a waiting state
  1073. //
  1074. #define COR_E_THREADINTERRUPTED EMAKEHR(0x1519L)
  1075. //
  1076. // MessageId: COR_E_THREADSTATE
  1077. //
  1078. // MessageText:
  1079. //
  1080. // Indicate that the Thread class is in an invalid state for the method call
  1081. //
  1082. #define COR_E_THREADSTATE EMAKEHR(0x1520L)
  1083. //
  1084. // MessageId: COR_E_THREADSTOP
  1085. //
  1086. // MessageText:
  1087. //
  1088. // Thrown into a thread to cause it to stop. This exception is typically not caught
  1089. //
  1090. #define COR_E_THREADSTOP EMAKEHR(0x1521L)
  1091. //
  1092. // MessageId: COR_E_TYPEINITIALIZATION
  1093. //
  1094. // MessageText:
  1095. //
  1096. // An exception was thrown by a type's initializer (.cctor).
  1097. //
  1098. #define COR_E_TYPEINITIALIZATION EMAKEHR(0x1534L)
  1099. //
  1100. // MessageId: COR_E_TYPELOAD
  1101. //
  1102. // MessageText:
  1103. //
  1104. // Could not find or load a specific type (class, enum, etc).
  1105. //
  1106. #define COR_E_TYPELOAD EMAKEHR(0x1522L)
  1107. //
  1108. // MessageId: COR_E_ENTRYPOINTNOTFOUND
  1109. //
  1110. // MessageText:
  1111. //
  1112. // Could not find the specified DllImport entry point
  1113. //
  1114. #define COR_E_ENTRYPOINTNOTFOUND EMAKEHR(0x1523L)
  1115. //
  1116. // MessageId: COR_E_DLLNOTFOUND
  1117. //
  1118. // MessageText:
  1119. //
  1120. // Could not find the specified DllImport DLL.
  1121. //
  1122. #define COR_E_DLLNOTFOUND EMAKEHR(0x1524L)
  1123. //
  1124. // MessageId: COR_E_UNAUTHORIZEDACCESS
  1125. //
  1126. // MessageText:
  1127. //
  1128. // Access is denied.
  1129. //
  1130. #define COR_E_UNAUTHORIZEDACCESS E_ACCESSDENIED // 0x80070005
  1131. //
  1132. // MessageId: COR_E_VERIFICATION
  1133. //
  1134. // MessageText:
  1135. //
  1136. // A verification failure occurred
  1137. //
  1138. #define COR_E_VERIFICATION EMAKEHR(0x150DL)
  1139. //
  1140. // MessageId: COR_E_INVALIDCOMOBJECT
  1141. //
  1142. // MessageText:
  1143. //
  1144. // An invalid __ComObject has been used.
  1145. //
  1146. #define COR_E_INVALIDCOMOBJECT EMAKEHR(0x1527L)
  1147. //
  1148. // MessageId: COR_E_MARSHALDIRECTIVE
  1149. //
  1150. // MessageText:
  1151. //
  1152. // The marshaling directives are invalid.
  1153. //
  1154. #define COR_E_MARSHALDIRECTIVE EMAKEHR(0x1535L)
  1155. //
  1156. // MessageId: COR_E_INVALIDOLEVARIANTTYPE
  1157. //
  1158. // MessageText:
  1159. //
  1160. // The type of an OLE variant that was passed into the runtime is invalid.
  1161. //
  1162. #define COR_E_INVALIDOLEVARIANTTYPE EMAKEHR(0x1531L)
  1163. //
  1164. // MessageId: COR_E_SAFEARRAYTYPEMISMATCH
  1165. //
  1166. // MessageText:
  1167. //
  1168. // A mismatch has occured between the runtime type of the array and the
  1169. // sub type recorded in the metadata.
  1170. //
  1171. #define COR_E_SAFEARRAYTYPEMISMATCH EMAKEHR(0x1533L)
  1172. //
  1173. // MessageId: COR_E_SAFEARRAYRANKMISMATCH
  1174. //
  1175. // MessageText:
  1176. //
  1177. // A mismatch has occured between the runtime rank of the array and the
  1178. // rank recorded in the metadata.
  1179. //
  1180. #define COR_E_SAFEARRAYRANKMISMATCH EMAKEHR(0x1538L)
  1181. //
  1182. // MessageId: COR_E_TARGETPARAMCOUNT
  1183. //
  1184. // MessageText:
  1185. //
  1186. // There was a mismatch between number of arguments provided and the number expected
  1187. //
  1188. #define COR_E_TARGETPARAMCOUNT DISP_E_BADPARAMCOUNT
  1189. //
  1190. // MessageId: COR_E_AMBIGUOUSMATCH
  1191. //
  1192. // MessageText:
  1193. //
  1194. // While late binding to a method via reflection, could not resolve between
  1195. // multiple overloads of a method.
  1196. //
  1197. #define COR_E_AMBIGUOUSMATCH _HRESULT_TYPEDEF_(0x8000211DL)
  1198. //
  1199. // MessageId: COR_E_INVALIDFILTERCRITERIA
  1200. //
  1201. // MessageText:
  1202. //
  1203. // The given filter criteria does not match the filter contract.
  1204. //
  1205. #define COR_E_INVALIDFILTERCRITERIA EMAKEHR(0x1601L)
  1206. //
  1207. // MessageId: COR_E_REFLECTIONTYPELOAD
  1208. //
  1209. // MessageText:
  1210. //
  1211. // Could not find or load a specific class that was requested through Reflection
  1212. //
  1213. #define COR_E_REFLECTIONTYPELOAD EMAKEHR(0x1602L)
  1214. //
  1215. // MessageId: COR_E_TARGET
  1216. //
  1217. // MessageText:
  1218. //
  1219. // - If you attempt to invoke a non-static method with a null Object - If you atte
  1220. //
  1221. #define COR_E_TARGET EMAKEHR(0x1603L)
  1222. //
  1223. // MessageId: COR_E_TARGETINVOCATION
  1224. //
  1225. // MessageText:
  1226. //
  1227. // If the method called throws an exception
  1228. //
  1229. #define COR_E_TARGETINVOCATION EMAKEHR(0x1604L)
  1230. //
  1231. // MessageId: COR_E_CUSTOMATTRIBUTEFORMAT
  1232. //
  1233. // MessageText:
  1234. //
  1235. // If the binary format of a custom attribute is invalid.
  1236. //
  1237. #define COR_E_CUSTOMATTRIBUTEFORMAT EMAKEHR(0x1605L)
  1238. //
  1239. // MessageId: COR_E_ENDOFSTREAM
  1240. //
  1241. // MessageText:
  1242. //
  1243. // Thrown when the End of file is reached
  1244. //
  1245. #define COR_E_ENDOFSTREAM HRESULT_FROM_WIN32(ERROR_HANDLE_EOF)
  1246. //
  1247. // MessageId: COR_E_FILELOAD
  1248. //
  1249. // MessageText:
  1250. //
  1251. //
  1252. //
  1253. #define COR_E_FILELOAD EMAKEHR(0x1621L)
  1254. //
  1255. // MessageId: COR_E_FILENOTFOUND
  1256. //
  1257. // MessageText:
  1258. //
  1259. //
  1260. //
  1261. #define COR_E_FILENOTFOUND HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND)
  1262. //
  1263. // MessageId: COR_E_IO
  1264. //
  1265. // MessageText:
  1266. //
  1267. // Some sort of I/O error.
  1268. //
  1269. #define COR_E_IO EMAKEHR(0x1620L)
  1270. //
  1271. // MessageId: COR_E_DIRECTORYNOTFOUND
  1272. //
  1273. // MessageText:
  1274. //
  1275. // The specified path couldn't be found.
  1276. //
  1277. #define COR_E_DIRECTORYNOTFOUND HRESULT_FROM_WIN32(ERROR_PATH_NOT_FOUND)
  1278. //
  1279. // MessageId: COR_E_PATHTOOLONG
  1280. //
  1281. // MessageText:
  1282. //
  1283. // The specified path was too long.
  1284. //
  1285. #define COR_E_PATHTOOLONG HRESULT_FROM_WIN32(ERROR_FILENAME_EXCED_RANGE)
  1286. //**** Shim errors 1700 - 1750
  1287. //
  1288. #define CLR_E_SHIM_RUNTIMELOAD EMAKEHR(0x1700) // Failed to load the runtime
  1289. #define CLR_E_SHIM_RUNTIMEEXPORT EMAKEHR(0x1701) // Failed to find a required export in the runtime
  1290. #define CLR_E_SHIM_INSTALLROOT EMAKEHR(0x1702) // Install root is not defined
  1291. #define CLR_E_SHIM_INSTALLCOMP EMAKEHR(0x1703) // Expected component of the runtime is not available
  1292. //**** Verifier Errors 1800 - 18FF
  1293. // See src/dlls/mscorrc/mscorrc.rc for a description of each error
  1294. #define VER_E_HRESULT EMAKEHR(0x1801)
  1295. #define VER_E_OFFSET EMAKEHR(0x1802)
  1296. #define VER_E_OPCODE EMAKEHR(0x1803)
  1297. #define VER_E_OPERAND EMAKEHR(0x1804)
  1298. #define VER_E_TOKEN EMAKEHR(0x1805)
  1299. #define VER_E_EXCEPT EMAKEHR(0x1806)
  1300. #define VER_E_STACK_SLOT EMAKEHR(0x1807)
  1301. #define VER_E_LOC EMAKEHR(0x1808)
  1302. #define VER_E_ARG EMAKEHR(0x1809)
  1303. #define VER_E_FOUND EMAKEHR(0x180A)
  1304. #define VER_E_EXPECTED EMAKEHR(0x180B)
  1305. #define VER_E_UNKNOWN_OPCODE EMAKEHR(0x1810)
  1306. #define VER_E_SIG_CALLCONV EMAKEHR(0x1811)
  1307. #define VER_E_SIG_ELEMTYPE EMAKEHR(0x1812)
  1308. #define VER_E_RET_SIG EMAKEHR(0x1814)
  1309. #define VER_E_FIELD_SIG EMAKEHR(0x1815)
  1310. #define VER_E_INTERNAL EMAKEHR(0x1818)
  1311. #define VER_E_STACK_TOO_LARGE EMAKEHR(0x1819)
  1312. #define VER_E_ARRAY_NAME_LONG EMAKEHR(0x181A)
  1313. #define VER_E_FALLTHRU EMAKEHR(0x1820)
  1314. #define VER_E_TRY_GTEQ_END EMAKEHR(0x1821)
  1315. #define VER_E_TRYEND_GT_CS EMAKEHR(0x1822)
  1316. #define VER_E_HND_GTEQ_END EMAKEHR(0x1823)
  1317. #define VER_E_HNDEND_GT_CS EMAKEHR(0x1824)
  1318. #define VER_E_FLT_GTEQ_CS EMAKEHR(0x1825)
  1319. #define VER_E_TRY_START EMAKEHR(0x1826)
  1320. #define VER_E_HND_START EMAKEHR(0x1827)
  1321. #define VER_E_FLT_START EMAKEHR(0x1828)
  1322. #define VER_E_TRY_OVERLAP EMAKEHR(0x1829)
  1323. #define VER_E_TRY_EQ_HND_FIL EMAKEHR(0x182A)
  1324. #define VER_E_TRY_SHARE_FIN_FAL EMAKEHR(0x182B)
  1325. #define VER_E_HND_OVERLAP EMAKEHR(0x182C)
  1326. #define VER_E_HND_EQ EMAKEHR(0x182D)
  1327. #define VER_E_FIL_OVERLAP EMAKEHR(0x182E)
  1328. #define VER_E_FIL_EQ EMAKEHR(0x182F)
  1329. #define VER_E_FIL_CONT_TRY EMAKEHR(0x1830)
  1330. #define VER_E_FIL_CONT_HND EMAKEHR(0x1831)
  1331. #define VER_E_FIL_CONT_FIL EMAKEHR(0x1832)
  1332. #define VER_E_FIL_GTEQ_CS EMAKEHR(0x1833)
  1333. #define VER_E_FIL_START EMAKEHR(0x1834)
  1334. #define VER_E_FALLTHRU_EXCEP EMAKEHR(0x1835)
  1335. #define VER_E_FALLTHRU_INTO_HND EMAKEHR(0x1836)
  1336. #define VER_E_FALLTHRU_INTO_FIL EMAKEHR(0x1837)
  1337. #define VER_E_LEAVE EMAKEHR(0x1838)
  1338. #define VER_E_RETHROW EMAKEHR(0x1839)
  1339. #define VER_E_ENDFINALLY EMAKEHR(0x183A)
  1340. #define VER_E_ENDFILTER EMAKEHR(0x183B)
  1341. #define VER_E_ENDFILTER_MISSING EMAKEHR(0x183C)
  1342. #define VER_E_BR_INTO_TRY EMAKEHR(0x183D)
  1343. #define VER_E_BR_INTO_HND EMAKEHR(0x183E)
  1344. #define VER_E_BR_INTO_FIL EMAKEHR(0x183F)
  1345. #define VER_E_BR_OUTOF_TRY EMAKEHR(0x1840)
  1346. #define VER_E_BR_OUTOF_HND EMAKEHR(0x1841)
  1347. #define VER_E_BR_OUTOF_FIL EMAKEHR(0x1842)
  1348. #define VER_E_BR_OUTOF_FIN EMAKEHR(0x1843)
  1349. #define VER_E_RET_FROM_TRY EMAKEHR(0x1844)
  1350. #define VER_E_RET_FROM_HND EMAKEHR(0x1845)
  1351. #define VER_E_RET_FROM_FIL EMAKEHR(0x1846)
  1352. #define VER_E_BAD_JMP_TARGET EMAKEHR(0x1847)
  1353. #define VER_E_PATH_LOC EMAKEHR(0x1848)
  1354. #define VER_E_PATH_THIS EMAKEHR(0x1849)
  1355. #define VER_E_PATH_STACK EMAKEHR(0x184A)
  1356. #define VER_E_PATH_STACK_DEPTH EMAKEHR(0x184B)
  1357. #define VER_E_THIS EMAKEHR(0x184C)
  1358. #define VER_E_THIS_UNINIT_EXCEP EMAKEHR(0x184D)
  1359. #define VER_E_THIS_UNINIT_STORE EMAKEHR(0x184E)
  1360. #define VER_E_THIS_UNINIT_RET EMAKEHR(0x184F)
  1361. #define VER_E_THIS_UNINIT_V_RET EMAKEHR(0x1850)
  1362. #define VER_E_THIS_UNINIT_BR EMAKEHR(0x1851)
  1363. #define VER_E_LDFTN_CTOR EMAKEHR(0x1852)
  1364. #define VER_E_STACK_NOT_EQ EMAKEHR(0x1853)
  1365. #define VER_E_STACK_UNEXPECTED EMAKEHR(0x1854)
  1366. #define VER_E_STACK_EXCEPTION EMAKEHR(0x1855)
  1367. #define VER_E_STACK_OVERFLOW EMAKEHR(0x1856)
  1368. #define VER_E_STACK_UNDERFLOW EMAKEHR(0x1857)
  1369. #define VER_E_STACK_EMPTY EMAKEHR(0x1858)
  1370. #define VER_E_STACK_UNINIT EMAKEHR(0x1859)
  1371. #define VER_E_STACK_I_I4_I8 EMAKEHR(0x185A)
  1372. #define VER_E_STACK_R_R4_R8 EMAKEHR(0x185B)
  1373. #define VER_E_STACK_NO_R_I8 EMAKEHR(0x185C)
  1374. #define VER_E_STACK_NUMERIC EMAKEHR(0x185D)
  1375. #define VER_E_STACK_OBJREF EMAKEHR(0x185E)
  1376. #define VER_E_STACK_P_OBJREF EMAKEHR(0x185F)
  1377. #define VER_E_STACK_BYREF EMAKEHR(0x1860)
  1378. #define VER_E_STACK_METHOD EMAKEHR(0x1861)
  1379. #define VER_E_STACK_ARRAY_SD EMAKEHR(0x1862)
  1380. #define VER_E_STACK_VALCLASS EMAKEHR(0x1863)
  1381. #define VER_E_STACK_P_VALCLASS EMAKEHR(0x1864)
  1382. #define VER_E_STACK_NO_VALCLASS EMAKEHR(0x1865)
  1383. #define VER_E_LOC_DEAD EMAKEHR(0x1866)
  1384. #define VER_E_LOC_NUM EMAKEHR(0x1867)
  1385. #define VER_E_ARG_NUM EMAKEHR(0x1868)
  1386. #define VER_E_TOKEN_RESOLVE EMAKEHR(0x1869)
  1387. #define VER_E_TOKEN_TYPE EMAKEHR(0x186A)
  1388. #define VER_E_TOKEN_TYPE_MEMBER EMAKEHR(0x186B)
  1389. #define VER_E_TOKEN_TYPE_FIELD EMAKEHR(0x186C)
  1390. #define VER_E_TOKEN_TYPE_SIG EMAKEHR(0x186D)
  1391. #define VER_E_UNVERIFIABLE EMAKEHR(0x186E)
  1392. #define VER_E_LDSTR_OPERAND EMAKEHR(0x186F)
  1393. #define VER_E_RET_PTR_TO_STACK EMAKEHR(0x1870)
  1394. #define VER_E_RET_VOID EMAKEHR(0x1871)
  1395. #define VER_E_RET_MISSING EMAKEHR(0x1872)
  1396. #define VER_E_RET_EMPTY EMAKEHR(0x1873)
  1397. #define VER_E_RET_UNINIT EMAKEHR(0x1874)
  1398. #define VER_E_ARRAY_ACCESS EMAKEHR(0x1875)
  1399. #define VER_E_ARRAY_V_STORE EMAKEHR(0x1876)
  1400. #define VER_E_ARRAY_SD EMAKEHR(0x1877)
  1401. #define VER_E_ARRAY_SD_PTR EMAKEHR(0x1878)
  1402. #define VER_E_ARRAY_FIELD EMAKEHR(0x1879)
  1403. #define VER_E_ARGLIST EMAKEHR(0x187A)
  1404. #define VER_E_VALCLASS EMAKEHR(0x187B)
  1405. #define VER_E_METHOD_ACCESS EMAKEHR(0x187C)
  1406. #define VER_E_FIELD_ACCESS EMAKEHR(0x187D)
  1407. #define VER_E_DEAD EMAKEHR(0x187E)
  1408. #define VER_E_FIELD_STATIC EMAKEHR(0x187F)
  1409. #define VER_E_FIELD_NO_STATIC EMAKEHR(0x1880)
  1410. #define VER_E_ADDR EMAKEHR(0x1881)
  1411. #define VER_E_ADDR_BYREF EMAKEHR(0x1882)
  1412. #define VER_E_ADDR_LITERAL EMAKEHR(0x1883)
  1413. #define VER_E_INITONLY EMAKEHR(0x1884)
  1414. #define VER_E_THROW EMAKEHR(0x1885)
  1415. #define VER_E_CALLVIRT_VALCLASS EMAKEHR(0x1886)
  1416. #define VER_E_CALL_SIG EMAKEHR(0x1887)
  1417. #define VER_E_CALL_STATIC EMAKEHR(0x1888)
  1418. #define VER_E_CTOR EMAKEHR(0x1889)
  1419. #define VER_E_CTOR_VIRT EMAKEHR(0x188A)
  1420. #define VER_E_CTOR_OR_SUPER EMAKEHR(0x188B)
  1421. #define VER_E_CTOR_MUL_INIT EMAKEHR(0x188C)
  1422. #define VER_E_SIG EMAKEHR(0x188D)
  1423. #define VER_E_SIG_ARRAY EMAKEHR(0x188E)
  1424. #define VER_E_SIG_ARRAY_PTR EMAKEHR(0x188F)
  1425. #define VER_E_SIG_ARRAY_BYREF EMAKEHR(0x1890)
  1426. #define VER_E_SIG_ELEM_PTR EMAKEHR(0x1891)
  1427. #define VER_E_SIG_VARARG EMAKEHR(0x1892)
  1428. #define VER_E_SIG_VOID EMAKEHR(0x1893)
  1429. #define VER_E_SIG_BYREF_BYREF EMAKEHR(0x1894)
  1430. #define VER_E_CODE_SIZE_ZERO EMAKEHR(0x1896)
  1431. #define VER_E_BAD_VARARG EMAKEHR(0x1897)
  1432. #define VER_E_TAIL_CALL EMAKEHR(0x1898)
  1433. #define VER_E_TAIL_BYREF EMAKEHR(0x1899)
  1434. #define VER_E_TAIL_RET EMAKEHR(0x189A)
  1435. #define VER_E_TAIL_RET_VOID EMAKEHR(0x189B)
  1436. #define VER_E_TAIL_RET_TYPE EMAKEHR(0x189C)
  1437. #define VER_E_TAIL_STACK_EMPTY EMAKEHR(0x189D)
  1438. #define VER_E_METHOD_END EMAKEHR(0x189E)
  1439. #define VER_E_BAD_BRANCH EMAKEHR(0x189F)
  1440. #define VER_E_FIN_OVERLAP EMAKEHR(0x18A0)
  1441. #define VER_E_LEXICAL_NESTING EMAKEHR(0x18A1)
  1442. #define VER_E_VOLATILE EMAKEHR(0x18A2)
  1443. #define VER_E_UNALIGNED EMAKEHR(0x18A3)
  1444. #define VER_E_INNERMOST_FIRST EMAKEHR(0x18A4)
  1445. #define VER_E_CALLI_VIRTUAL EMAKEHR(0x18A5)
  1446. #define VER_E_CALL_ABSTRACT EMAKEHR(0x18A6)
  1447. #define VER_E_STACK_UNEXP_ARRAY EMAKEHR(0x18A7)
  1448. #define VER_E_NOT_IN_GC_HEAP EMAKEHR(0x18A8)
  1449. #define VER_E_TRY_N_EMPTY_STACK EMAKEHR(0x18A9)
  1450. #define VER_E_DLGT_CTOR EMAKEHR(0x18AA)
  1451. #define VER_E_DLGT_BB EMAKEHR(0x18AB)
  1452. #define VER_E_DLGT_PATTERN EMAKEHR(0x18AC)
  1453. #define VER_E_DLGT_LDFTN EMAKEHR(0x18AD)
  1454. #define VER_E_FTN_ABSTRACT EMAKEHR(0x18AE)
  1455. #define VER_E_SIG_C_VC EMAKEHR(0x18AF)
  1456. #define VER_E_SIG_VC_C EMAKEHR(0x18B0)
  1457. #define VER_E_BOX_PTR_TO_STACK EMAKEHR(0x18B1)
  1458. #define VER_E_SIG_BYREF_TB_AH EMAKEHR(0x18B2)
  1459. #define VER_E_SIG_ARRAY_TB_AH EMAKEHR(0x18B3)
  1460. #define VER_E_ENDFILTER_STACK EMAKEHR(0x18B4)
  1461. #define VER_E_DLGT_SIG_I EMAKEHR(0x18B5)
  1462. #define VER_E_DLGT_SIG_O EMAKEHR(0x18B6)
  1463. #define VER_E_RA_PTR_TO_STACK EMAKEHR(0x18B7)
  1464. #define VER_E_CATCH_VALUE_TYPE EMAKEHR(0x18B8)
  1465. #define VER_E_FIL_PRECEED_HND EMAKEHR(0x18B9)
  1466. #define VER_E_LDVIRTFTN_STATIC EMAKEHR(0x18BA)
  1467. #define VER_E_CALLVIRT_STATIC EMAKEHR(0x18BB)
  1468. #define VER_E_INITLOCALS EMAKEHR(0x18BC)
  1469. #define VER_E_BR_TO_EXCEPTION EMAKEHR(0x18BD)
  1470. #define VER_E_CALL_CTOR EMAKEHR(0x18BE)
  1471. #define VER_E_BAD_PE EMAKEHR(0x18F0)
  1472. #define VER_E_BAD_MD EMAKEHR(0x18F1)
  1473. #define VER_E_BAD_APPDOMAIN EMAKEHR(0x18F2)
  1474. #define VER_E_TYPELOAD EMAKEHR(0x18F3)
  1475. #define VER_E_PE_LOAD EMAKEHR(0x18F4)
  1476. //
  1477. // ATTENTION: Range 0x1900 - 0x1AFF is reserved for Framework errors
  1478. // Range 0x1B00 - 0x1BFF is reserved for MD Validator errors (see above VLDTR_E_...)
  1479. //
  1480. #endif // __COMMON_LANGUAGE_RUNTIME_HRESULTS__