home *** CD-ROM | disk | FTP | other *** search
/ io Programmo 40 / IOPROG_40.ISO / SOFT / NETFrameworkSDK.exe / comsdk.cab / corerror.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-06-23  |  62.4 KB  |  1,337 lines

  1. /*********************************************************************
  2.  **                                                                 **
  3.  ** Corerror.h - lists the HResults used by the COM+ Runtime.       **
  4.  ** Created: September 3, 1999.                                     **
  5.  **                                                                 **
  6.  ** Copyright (C) 2000 Microsoft Corporation.                       **
  7.  **                                                                 **
  8.  *********************************************************************/
  9.  
  10.  
  11. #ifndef __COMPLUS_RUNTIME_HRESULTS__
  12. #define __COMPLUS_RUNTIME_HRESULTS__
  13.  
  14. /*********************************************************************
  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 URT.
  18.  
  19.   For the COM+ Runtime (the URT's back-end interpreter), we've been 
  20.   given the range 0x1yyy for now.  That range was further divided 
  21.   for different groups within the runtime:
  22.  
  23.   0x10yy for Execution Engine errors
  24.   0x11yy for Metadata, TypeLib Export, and CLDB errors
  25.   0X12yy for Validator
  26.   0x13yy for Debugger and Profiler errors
  27.   0x14yy for Security errors
  28.   0x15yy for Classlib errors
  29.   0x16yy for more Classlib errors
  30.   0x18yy for Verifier errors
  31.  
  32. *********************************************************************/
  33.  
  34. #include <winerror.h>
  35.  
  36. #ifndef FACILITY_URT
  37. #define FACILITY_URT            0x13
  38. #endif
  39.  
  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.  
  46. // ******************
  47. // FACILITY_UTF
  48. // ******************
  49.  
  50.  
  51. // ******************
  52. // Metadata errors
  53. // ******************
  54.  
  55. //**** ICeeFileGen errors.
  56. #define CEE_E_ENTRYPOINT                EMAKEHR(0x1000)     // The entry point info is invalid.
  57.  
  58. //**** EE errors
  59. #define MSEE_E_LOADLIBFAILED            EMAKEHR(0x1010)     // Failed to delay load library %s (Win32 error: %d).
  60. #define MSEE_E_GETPROCFAILED            EMAKEHR(0x1011)     // Failed to get entry point %s (Win32 error: %d).
  61. #define MSEE_E_MULTCOPIESLOADED         EMAKEHR(0x1012)     // Multiple copies of MSCOREE.dll have been loaded by the same process.
  62. #define MSEE_E_CLASSUNLOADED            EMAKEHR(0x1013)     // call to unloaded class
  63. #define MSEE_E_APPDOMAINUNLOADED        EMAKEHR(0x1014)     // access unloaded appdomain
  64. #define MSEE_E_APPDOMAINUNLOADINPROGRESS EMAKEHR(0x1015)     // Unload already in progress
  65. //=============================================================================
  66. // THE VALIDATOR IS CURRENTLY USING ERROR CODES STARTING WITH 0x1050 ONWARDS.
  67. // LOOK AT ERROR CODES STARTING FROM VLDTR_E_AS_NAMENULL.  JUST A NOTE IN CASE
  68. // THE EE EVER COMES TO THE POINT OF NEEDING THOSE!!!
  69. //=============================================================================
  70.  
  71. //**** Generic errors.
  72. #define CLDB_E_FILE_BADREAD             EMAKEHR(0x1100)     // Error occured during a read.
  73. #define CLDB_E_FILE_BADWRITE            EMAKEHR(0x1101)     // Error occured during a write.
  74. #define CLDB_E_FILE_READONLY            EMAKEHR(0x1103)     // File is read only.
  75. #define CLDB_E_NAME_ERROR               EMAKEHR(0x1105)     // An ill-formed name was given.
  76. #define CLDB_S_TRUNCATION               SMAKEHR(0x1106)     // STATUS: Data value was truncated.
  77. #define CLDB_E_TRUNCATION               EMAKEHR(0x1106)     // ERROR:  Data value was truncated.
  78. #define CLDB_E_FILE_OLDVER              EMAKEHR(0x1107)     // Old version error.
  79. #define CLDB_E_RELOCATED                EMAKEHR(0x1108)     // A shared mem open failed to open at the originally
  80.                                                     //  assigned memory address.
  81. #define CLDB_S_NULL                     SMAKEHR(0x1109)     // NULL data value.
  82. #define CLDB_E_SMDUPLICATE              EMAKEHR(0x110A)     // Create of shared memory failed.  A memory mapping of the same name already exists.
  83. #define CLDB_E_NO_DATA                  EMAKEHR(0x110B)     // There isn't .CLB data in the memory or stream.
  84. #define CLDB_E_READONLY                 EMAKEHR(0x110C)     // Database is read only.
  85. #define CLDB_E_INCOMPATIBLE             EMAKEHR(0x110D)     // The importing scope is not comptabile with the emitting scope
  86.  
  87. //**** Schema errors.
  88. #define CLDB_E_FILE_CORRUPT             EMAKEHR(0x110E)     // File is corrupt.
  89. #define CLDB_E_SCHEMA_VERNOTFOUND       EMAKEHR(0x110F)   // Version %d of schema '%s' not found.
  90. #define CLDB_E_BADUPDATEMODE            EMAKEHR(0x1110)     // cannot open a incrementally build scope for full update
  91.  
  92. //**** Index errors.
  93. #define CLDB_E_INDEX_NONULLKEYS         EMAKEHR(0x1121)     // Null value not allowed in unique index or primary key.
  94. #define CLDB_E_INDEX_DUPLICATE          EMAKEHR(0x1122)     // Unique index %s has been violated.
  95. #define CLDB_E_INDEX_BADTYPE            EMAKEHR(0x1123)     // The columns data type is not allowed in an index.
  96. #define CLDB_E_INDEX_NOTFOUND           EMAKEHR(0x1124)     // Index %s not found.
  97. #define CLDB_S_INDEX_TABLESCANREQUIRED  SMAKEHR(0x1125) // Table scan required to run query.
  98.  
  99. //**** Record errors.
  100. #define CLDB_E_RECORD_NOTFOUND          EMAKEHR(0x1130)     // Record wasn't found on lookup.
  101. #define CLDB_E_RECORD_OVERFLOW          EMAKEHR(0x1131)     // Too many records were returned for criteria.
  102. #define CLDB_E_RECORD_DUPLICATE         EMAKEHR(0x1132)     // Record is a duplicate.
  103. #define CLDB_E_RECORD_PKREQUIRED        EMAKEHR(0x1133)    // Primary key value is required.
  104. #define CLDB_E_RECORD_DELETED           EMAKEHR(0x1134)     // Record is valid but deleted.
  105. #define CLDB_E_RECORD_OUTOFORDER        EMAKEHR(0x1135)    // Record is emitted out of order.
  106.  
  107. //**** Column errors.
  108. #define CLDB_E_COLUMN_OVERFLOW          EMAKEHR(0x1140)     // Data too large.
  109. #define CLDB_E_COLUMN_READONLY          EMAKEHR(0x1141)     // Column cannot be changed.
  110. #define CLDB_E_COLUMN_SPECIALCOL        EMAKEHR(0x1142)    // Too many RID or primary key columns, 1 is max.
  111. #define CLDB_E_COLUMN_PKNONULLS         EMAKEHR(0x1143)     // Primary key column %s may not allow the null value.
  112. //@todo: RENUMBER!!!!!!!!                     
  113. //@todo: RENUMBER!!!!!!!!                     
  114. //@todo: RENUMBER!!!!!!!!                     
  115.  
  116. //**** Table errors.
  117. #define CLDB_E_TABLE_CANTDROP           EMAKEHR(0x1150)     // Can't auto-drop table while open.
  118.  
  119. //**** Object errors.
  120. #define CLDB_E_OBJECT_NOTFOUND          EMAKEHR(0x1151)     // Object was not found in the database.
  121. #define CLDB_E_OBJECT_COLNOTFOUND       EMAKEHR(0x1152)   // The column was not found.
  122.  
  123. //**** Vector errors.
  124. #define CLDB_E_VECTOR_BADINDEX          EMAKEHR(0x1153)     // The index given was invalid.
  125.  
  126. //**** Heap errors;
  127. #define CLDB_E_TOO_BIG                  EMAKEHR(0x1154)     // A blob or string was too big.
  128. //@todo: RENUMBER!!!!!!!!                     
  129. //@todo: RENUMBER!!!!!!!!                     
  130. //@todo: RENUMBER!!!!!!!!                     
  131.  
  132. //**** IMeta* errors.
  133. #define META_E_DUPLICATE                EMAKEHR(0x1180)     // Attempt to define an object that already exists.
  134. #define META_E_GUID_REQUIRED            EMAKEHR(0x1181)     // A guid was not provided where one was required.
  135. #define META_E_TYPEDEF_MISMATCH         EMAKEHR(0x1182)     // Merge: an import typedef matched ns.name, but not version and guid.
  136. #define META_E_MERGE_COLLISION          EMAKEHR(0x1183)     // Merge: conflict between import and emit
  137.  
  138. #define META_E_METHD_NOT_FOUND          EMAKEHR(0x1187) // Merge: Class already in emit scope, but member not found
  139. #define META_E_FIELD_NOT_FOUND          EMAKEHR(0x1188) // Merge: Class already in emit scope, but member not found
  140. #define META_S_PARAM_MISMATCH           SMAKEHR(0x1189) // Merge: Parameter information mismatched.
  141. #define META_E_PARAM_MISMATCH           EMAKEHR(0x1189) // Merge: Parameter information mismatched.
  142. #define META_E_BADMETADATA              EMAKEHR(0x118A) // Merge: Inconsistency in meta data import scope
  143. #define META_E_INTFCEIMPL_NOT_FOUND     EMAKEHR(0x118B) // Merge: Class already in emit scope, but interfaceimpl not found
  144. #define META_E_CLASS_LAYOUT_INCONSISTENT EMAKEHR(0x118D) // Merge: Class is duplicated but class layout information is not consistent
  145. #define META_E_FIELD_MARSHAL_NOT_FOUND  EMAKEHR(0x118E) // Merge: Field is duplicated but we cannot find the matching FieldMarshal information
  146. #define META_E_METHODSEM_NOT_FOUND      EMAKEHR(0x118F) // Merge: 
  147. #define META_E_EVENT_NOT_FOUND          EMAKEHR(0x1190) // Merge: Method is duplicated but we cannot find the matching event info.
  148. #define META_E_PROP_NOT_FOUND           EMAKEHR(0x1191) // Merge: Method is duplicated but we cannot find the maching property info.
  149. #define META_E_BAD_SIGNATURE            EMAKEHR(0x1192) // Bad binary signature
  150. #define META_E_BAD_INPUT_PARAMETER      EMAKEHR(0x1193) // Bad input parameters
  151. #define META_E_METHDIMPL_INCONSISTENT   EMAKEHR(0x1194) // Merge: duplicated methods have inconsistent ImplFlags
  152. #define META_E_MD_INCONSISTENCY         EMAKEHR(0x1195) // Merge: Inconsistency in meta data
  153.  
  154. #define META_E_CANNOTRESOLVETYPEREF     EMAKEHR(0x1196) // Cannot resolve typeref
  155. #define META_S_DUPLICATE                SMAKEHR(0x1197) // Attempt to define an object that already exists in valid scenerios.
  156. #define META_E_STRINGSPACE_FULL         EMAKEHR(0x1198) // No logical space left to create more user strings.
  157.  
  158. #define META_E_UNEXPECTED_REMAP         EMAKEHR(0x1199) // A TokenRemap occurred which we weren't prepared to handle.
  159.  
  160. #define META_E_HAS_UNMARKALL            EMAKEHR(0x119A) // Unmark all has been called already
  161. #define META_E_MUST_CALL_UNMARKALL      EMAKEHR(0x119B) // Must call UnmarkAll first before marking.
  162.  
  163. #define TLBX_E_CANT_LOAD_MODULE         EMAKEHR(0x11A0) // TypeLib export: can't open the module to export.
  164. #define TLBX_E_CANT_LOAD_CLASS          EMAKEHR(0x11A1) // TypeLib export: can't load a class.  
  165. #define TLBX_E_NULL_MODULE              EMAKEHR(0x11A2) // TypeLib export: the hMod of a loaded class is 0; can't export it.
  166. #define TLBX_E_NO_CLSID_KEY             EMAKEHR(0x11A3) // TypeLib export: no CLSID or Interface subkey to HKCR.
  167. #define TLBX_E_CIRCULAR_EXPORT          EMAKEHR(0x11A4) // TypeLib export: attempt to export a CLB imported from a TLB.
  168. #define TLBX_E_CIRCULAR_IMPORT          EMAKEHR(0x11A5) // TypeLib import: attempt to import a TLB exported from a CLB.
  169. #define TLBX_E_BAD_NATIVETYPE           EMAKEHR(0x11A6) // TypeLib export: bad Native type in method signature.
  170. #define TLBX_E_BAD_VTABLE               EMAKEHR(0x11A7) // TypeLib import: non-increasing vtable (duplicate slots).
  171. #define TLBX_E_CRM_NON_STATIC           EMAKEHR(0x11A8) // TypeLib export: the COM register method is non static.
  172. #define TLBX_E_CRM_INVALID_SIG          EMAKEHR(0x11A9) // TypeLib export: the specified COM register method does not have the correct signature.
  173. #define TLBX_E_CLASS_LOAD_EXCEPTION     EMAKEHR(0x11AA) // TypeLib export: can't load, have the class load exception.
  174. #define TLBX_E_UNKNOWN_SIGNATURE        EMAKEHR(0x11AB) // TypeLib export: unknown element in signature.
  175. #define TLBX_S_UNKNOWN_SIGNATURE        SMAKEHR(0x11AB) // TypeLib export: unknown element in signature.
  176. #define TLBX_E_REFERENCED_TYPELIB       EMAKEHR(0x11AC) // TypeLib import: reference to an external typelib.
  177. #define TLBX_S_REFERENCED_TYPELIB       SMAKEHR(0x11AC) // TypeLib import: reference to an external typelib.
  178. #define TLBX_E_INVALID_NAMESPACE        EMAKEHR(0x11AD) // TypeLib import: an imported typelib has an invalid namespace name.
  179. #define TLBX_E_LAYOUT_ERROR             EMAKEHR(0x11AE) // Typelib export: an error on Layout()
  180. #define TLBX_E_NOTIUNKNOWN              EMAKEHR(0x11AF) // Typelib import: Interface not derived from IUnknown.
  181. #define TLBX_E_NONVISIBLEVALUECLASS     EMAKEHR(0x11B0) // Typelib export: Non COM visible value type in method signature.
  182. #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.
  183. #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.
  184. #define TLBX_S_NOSTDINTERFACE           SMAKEHR(0x11b3) // Typelib export: Found an interface marked as IID_IDispatch or IID_IUnknown.
  185. #define TLBX_S_DUPLICATE_DISPID         SMAKEHR(0x11b4) // Typelib export: duplicate dispid found; ignored.
  186. #define TLBX_E_ENUM_VALUE_INVALID       EMAKEHR(0x11b5) // Typelib export: The enum value is not legal for a typelib.
  187. #define TLBX_E_DUPLICATE_IID            EMAKEHR(0x11b6) // Typelib export: Duplicate IID
  188. #define TLBX_E_NO_NESTED_ARRAYS         EMAKEHR(0x11b7) // Tyeplib export: detected nested arrays.
  189. #define TLBX_E_PARAM_ERROR_NAMED        EMAKEHR(0x11b8) // Typelib import: param type couldn't be converted.
  190. #define TLBX_E_PARAM_ERROR_UNNAMED      EMAKEHR(0x11b9) // Typelib import: param type couldn't be converted -- param name unknown.
  191. //@todo: RENUMBER!!!!!!!!                     
  192. //@todo: RENUMBER!!!!!!!!                     
  193. //@todo: RENUMBER!!!!!!!!                     
  194. #define TLBX_E_INVALID_TYPEINFO         EMAKEHR(0x1160) // Typelib import: invalid type, not converted.
  195. #define TLBX_E_INVALID_TYPEINFO_UNNAMED EMAKEHR(0x1161) // Typelib import: invalid type, not converted -- name unknown.
  196. #define TLBX_E_CTX_NESTED               EMAKEHR(0x1162) // Typelib export: Format string for nested contexts.
  197. #define TLBX_E_ERROR_MESSAGE            EMAKEHR(0x1163) // Typelib export: Error message wrapper.
  198. #define TLBX_E_CANT_SAVE                EMAKEHR(0x1164) // Typelib export: cant "SaveAllChanges()"
  199. //@todo: RENUMBER!!!!!!!!                     
  200. //@todo: RENUMBER!!!!!!!!                     
  201.                      
  202.                      
  203. #define META_E_CA_INVALID_TARGET        EMAKEHR(0x11C0) // Known custom attribute on invalid target.
  204. #define META_E_CA_INVALID_VALUE         EMAKEHR(0x11C1) // Known custom attribute had invalid value.
  205. #define META_E_CA_INVALID_BLOB          EMAKEHR(0x11C2) // Known custom attribute blob is bad format.
  206. #define META_E_CA_REPEATED_ARG          EMAKEHR(0x11C3) // Known custom attribute blob has repeated named argument.
  207. #define META_E_CA_UNKNOWN_ARGUMENT      EMAKEHR(0x11C4) // Known custom attrubte named arg not recognized.
  208. #define META_E_CA_VARIANT_NYI           EMAKEHR(0x11C5) // Known attribute named argument doesn't support variant.
  209. #define META_E_CA_ARRAY_NYI             EMAKEHR(0x11C6) // Known attribute named argument doesn't support array.
  210. #define META_E_CA_UNEXPECTED_TYPE       EMAKEHR(0x11C7) // Known attribute parser found unexpected type.
  211. #define META_E_CA_INVALID_ARGTYPE       EMAKEHR(0x11C8) // Known attribute parser only handles fields -- no properties.
  212. #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.
  213. #define META_E_CA_INVALID_UUID          EMAKEHR(0x11CA) // The format of the UUID was invalid.
  214. #define META_E_CA_INVALID_MARSHALAS_FIELDS EMAKEHR(0x11CB) // The MarshalAs attribute has fields set that are not valid for the specified unmanaged type.
  215. #define META_E_CA_NT_FIELDONLY          EMAKEHR(0x11CC) // The specified unmanaged type is only valid on fields.
  216. #define META_E_CA_NEGATIVE_PARAMINDEX   EMAKEHR(0x11CD) // The parameter index cannot be negative.
  217. #define META_E_CA_NEGATIVE_MULTIPLIER   EMAKEHR(0x11CE) // The multiplier cannot be negative.
  218. #define META_E_CA_NEGATIVE_CONSTSIZE    EMAKEHR(0x11CF) // The constant size cannot be negative.
  219. #define META_E_CA_FIXEDSTR_SIZE_REQUIRED EMAKEHR(0x11D0) // A fixed string requires a size.
  220.  
  221. // Return values from validator functions.
  222. #define VLDTR_S_WRN                     SMAKEHR(0x1200) // Warnings found in the validator.
  223. #define VLDTR_S_ERR                     SMAKEHR(0x1201) // Errors found in the validator.
  224. #define VLDTR_S_WRNERR                  SMAKEHR(0x1202) // Warnings and errors found in the validator.
  225.  
  226. // Validator structural errors.                 
  227. #define VLDTR_E_RID_OUTOFRANGE          EMAKEHR(0x1203) // Rid is out of range.
  228. #define VLDTR_E_CDTKN_OUTOFRANGE        EMAKEHR(0x1204) // Coded token type is out of range.
  229. #define VLDTR_E_CDRID_OUTOFRANGE        EMAKEHR(0x1205) // Coded rid is out of range.
  230. #define VLDTR_E_STRING_INVALID          EMAKEHR(0x1206) // String offset is invalid.
  231. #define VLDTR_E_GUID_INVALID            EMAKEHR(0x1207) // GUID offset is invalid.
  232. #define VLDTR_E_BLOB_INVALID            EMAKEHR(0x1208) // Blob offset if invalid.
  233.  
  234. // Validator semantic errors.                   
  235. #define VLDTR_E_MOD_MULTI               EMAKEHR(0x1209) // Multiple module records found.
  236. #define VLDTR_E_MOD_NULLMVID            EMAKEHR(0x120A) // Module has null MVID.
  237. #define VLDTR_E_TR_NAMENULL             EMAKEHR(0x120B) // TypeRef name is NULL.
  238. #define VLDTR_E_TR_DUP                  EMAKEHR(0x120C) // TypeRef has a dup.
  239. #define VLDTR_E_TD_NAMENULL             EMAKEHR(0x120D) // TypeDef name is NULL.
  240. #define VLDTR_E_TD_DUPNAME              EMAKEHR(0x120E) // TypeDef has a dup based on name+namespace.
  241. #define VLDTR_E_TD_DUPGUID              EMAKEHR(0x120F) // TypeDef has a dup based on GUID.
  242. #define VLDTR_E_TD_NOTIFACEOBJEXTNULL   EMAKEHR(0x1210) // TypeDef that's not an Interface and not System.Object extends nil parent.
  243. #define VLDTR_E_TD_OBJEXTENDSNONNULL    EMAKEHR(0x1211) // System.Object extends a non-nil parent.
  244. #define VLDTR_E_TD_EXTENDSSEALED        EMAKEHR(0x1212) // TypeDef extends sealed class.
  245. #define VLDTR_E_TD_DLTNORTSPCL          EMAKEHR(0x1213) // TypeDef is Deleted but not marked with RTSpecialName.
  246. #define VLDTR_E_TD_RTSPCLNOTDLT         EMAKEHR(0x1214) // TypeDef is marked RTSpecialName, but is not a Deleted record.
  247. #define VLDTR_E_TD_ENUMNOTVT            EMAKEHR(0x1215) // TypeDef is an Enum but not a ValueType.
  248. #define VLDTR_E_TD_ABSSEAL              EMAKEHR(0x1216) // TypeDef is marked both Abstract and Sealed.
  249. #define VLDTR_E_TD_UNMGDNSTD            EMAKEHR(0x1217) // TypeDef is marked both Unmanaged and Nested.
  250. #define VLDTR_E_TD_IFACENSTD            EMAKEHR(0x1218) // TypeDef is marked both Interface and Nested.
  251. #define VLDTR_E_TD_IFACENOTABS          EMAKEHR(0x1219) // TypeDef is marked Interface but not Abstract.
  252. #define VLDTR_E_TD_IFACEPARNOTNIL       EMAKEHR(0x121A) // TypeDef is marked Interface but parent is not Nil.
  253. #define VLDTR_E_TD_IFACEGUIDNULL        EMAKEHR(0x121B) // TypeDef is marked Interface but GUID is NULL.
  254. #define VLDTR_E_TD_VTEXTSNONCLS         EMAKEHR(0x121C) // TypeDef is marked ValueType but extends a non-class TypeDef.
  255. #define VLDTR_E_TD_VTNOTSEAL            EMAKEHR(0x121D) // TypeDef is marked ValueType but not marked Sealed.
  256. #define VLDTR_E_TD_CLSEXTSNONCLS        EMAKEHR(0x121E) // TypeDef is marked Class but extends a non-class TypeDef.
  257. #define VLDTR_E_IFACE_DUP               EMAKEHR(0x121F) // InterfaceImpl has a dup.
  258. #define VLDTR_E_MR_NAMENULL             EMAKEHR(0x1220) // MemberRef name is NULL.
  259. #define VLDTR_E_MR_VTBLNAME             EMAKEHR(0x1221) // MemberRef has an invalid name, _VtblGap*.
  260. #define VLDTR_E_MR_DELNAME              EMAKEHR(0x1222) // MemberRef has an invalid name, _Deleted*.
  261. #define VLDTR_E_MR_PARNIL               EMAKEHR(0x1223) // MemberRef parent Nil in a PE file.
  262. #define VLDTR_E_MR_BADCALLINGCONV       EMAKEHR(0x1224) // MemberRef has invalid calling convention.
  263. #define VLDTR_E_MR_NOTVARARG            EMAKEHR(0x1225) // MemberRef has Method parent but calling convention is not VARARG.
  264. #define VLDTR_E_MR_NAMEDIFF             EMAKEHR(0x1226) // MemberRef name different from parent MethodDef.
  265. #define VLDTR_E_MR_SIGDIFF              EMAKEHR(0x1227) // MemberRef signature different from parent MethodDef.
  266. #define VLDTR_E_MR_DUP                  EMAKEHR(0x1228) // MemberRef has a dup.
  267. #define VLDTR_E_CL_TDAUTO               EMAKEHR(0x1229) // ClassLayout parent TypeDef is marked AutoLayout.
  268. #define VLDTR_E_CL_BADPCKSZ             EMAKEHR(0x122A) // ClassLayout has bad PackingSize.
  269. #define VLDTR_E_CL_DUP                  EMAKEHR(0x122B) // ClassLayout has dup.
  270. #define VLDTR_E_FL_BADOFFSET            EMAKEHR(0x122C) // FieldLayout2 has bad offset.
  271. #define VLDTR_E_FL_TDNIL                EMAKEHR(0x122D) // FieldLayout2 has field with nil parent.
  272. #define VLDTR_E_FL_NOCL                 EMAKEHR(0x122E) // FieldLayout2 has no ClassLayout record.
  273. #define VLDTR_E_FL_TDNOTEXPLCT          EMAKEHR(0x122F) // FieldLayout2 parent TypeDef is not marked with ExplicitLayout.
  274. #define VLDTR_E_FL_FLDSTATIC            EMAKEHR(0x1230) // FieldLayout2 has field marked Static.
  275. #define VLDTR_E_FL_DUP                  EMAKEHR(0x1231) // FieldLayout2 has a dup.
  276. #define VLDTR_E_MODREF_NAMENULL         EMAKEHR(0x1232) // ModuleRef name is NULL.
  277. #define VLDTR_E_MODREF_DUP              EMAKEHR(0x1233) // ModuleRef has a dup.
  278. #define VLDTR_E_TR_BADSCOPE             EMAKEHR(0x1234) // TypeRef has a bad resolution scope.
  279. #define VLDTR_E_TD_NESTEDNOENCL         EMAKEHR(0x1235) // TypeDef marked nested has no encloser.
  280. #define VLDTR_E_TD_EXTTRRES             EMAKEHR(0x1236) // TypeDef extends a TypeRef which resolves to a TypeDef in the same module.
  281. #define VLDTR_E_SIGNULL                 EMAKEHR(0x1237) // Signature specified is zero-sized.
  282. #define VLDTR_E_SIGNODATA               EMAKEHR(0x1238) // Signature does not have enough data at specified byte.
  283. #define VLDTR_E_MD_BADCALLINGCONV       EMAKEHR(0x1239) // Method signature has invalid calling convention.
  284. #define VLDTR_E_MD_THISSTATIC           EMAKEHR(0x123A) // Method is marked static but has HASTHIS/EXPLICITTHIS set on the calling convention.
  285. #define VLDTR_E_MD_NOTTHISNOTSTATIC     EMAKEHR(0x123B) // Method is not marked static but is not HASTHIS/EXPLICITTHIS.
  286. #define VLDTR_E_MD_NOARGCNT             EMAKEHR(0x123C) // Method signature is missing the argument count.
  287. #define VLDTR_E_SIG_MISSELTYPE          EMAKEHR(0x123D) // Signature missing element type.
  288. #define VLDTR_E_SIG_MISSTKN             EMAKEHR(0x123E) // Signature missing token.
  289. #define VLDTR_E_SIG_TKNBAD              EMAKEHR(0x123F) // Signature has bad token.
  290. #define VLDTR_E_SIG_MISSFPTR            EMAKEHR(0x1240) // Signature is missing function pointer.
  291. #define VLDTR_E_SIG_MISSFPTRARGCNT      EMAKEHR(0x1241) // Signature has function pointer missing argument count.
  292. #define VLDTR_E_SIG_MISSRANK            EMAKEHR(0x1242) // Signature is missing rank specification.
  293. #define VLDTR_E_SIG_MISSNSIZE           EMAKEHR(0x1243) // Signature is missing count of sized dimensions.
  294. #define VLDTR_E_SIG_MISSSIZE            EMAKEHR(0x1244) // Signature is missing size of dimension.
  295. #define VLDTR_E_SIG_MISSNLBND           EMAKEHR(0x1245) // Signature is missing count of lower bounds.
  296. #define VLDTR_E_SIG_MISSLBND            EMAKEHR(0x1246) // Signature is missing a lower bound.
  297. #define VLDTR_E_SIG_BADELTYPE           EMAKEHR(0x1247) // Signature has bad element type.
  298. #define VLDTR_E_SIG_MISSVASIZE          EMAKEHR(0x1248) // Signature has value array missing size.
  299. #define VLDTR_E_FD_BADCALLINGCONV       EMAKEHR(0x1249) // Field signature has invalid calling convention.
  300. #define VLDTR_E_MD_NAMENULL             EMAKEHR(0x124A) // Method name is NULL.
  301. #define VLDTR_E_MD_PARNIL               EMAKEHR(0x124B) // Method has parent NIL.
  302. #define VLDTR_E_MD_DUP                  EMAKEHR(0x124C) // Method has dup.
  303. #define VLDTR_E_FD_NAMENULL             EMAKEHR(0x124D) // Field name is NULL.
  304. #define VLDTR_E_FD_PARNIL               EMAKEHR(0x124E) // Field parent is Nil.
  305. #define VLDTR_E_FD_DUP                  EMAKEHR(0x124F) // Field has dup.
  306. #define VLDTR_E_AS_MULTI                EMAKEHR(0x1250) // Multiple Assembly records found.
  307. #define VLDTR_E_AS_NAMENULL             EMAKEHR(0x1251) // Assembly name is NULL.
  308. #define VLDTR_E_AS_CTIMPLCTCTEXST       EMAKEHR(0x1252) // Assembly is marked ImplicitComTypes but ComType table not empty.
  309. #define VLDTR_E_AS_RSRCIMPLCTMREXST     EMAKEHR(0x1253) // Assembly is marked ImplicitResources but ManifestResource table not empty.
  310. #define VLDTR_E_ASOS_OSPLTFRMIDINVAL    EMAKEHR(0x1254) // AssemblyOS platform ID invalid.
  311. #define VLDTR_E_AR_NAMENULL             EMAKEHR(0x1255) // AssemblyRef name is NULL.
  312. #define VLDTR_E_TD_ENCLNOTNESTED        EMAKEHR(0x1256) // TypeDef not nested has encloser.
  313. #define VLDTR_E_AROS_OSPLTFRMIDINVAL    EMAKEHR(0x1257) // AssemblyRefOS has invalid platform ID.
  314. #define VLDTR_E_FILE_NAMENULL           EMAKEHR(0x1258) // File name is NULL.
  315. #define VLDTR_E_CT_NAMENULL             EMAKEHR(0x1259) // ComType name is NULL.
  316. #define VLDTR_E_CT_NOTPUBPRIV           EMAKEHR(0x125A) // ComType is neither Public nor Private.
  317. #define VLDTR_E_MAR_NAMENULL            EMAKEHR(0x125B) // ManifestResource name is NULL.
  318. #define VLDTR_E_FILE_DUP                EMAKEHR(0x125C) // File has dup.
  319. #define VLDTR_E_FILE_NAMEFULLQLFD       EMAKEHR(0x125D) // File name is fully qualified.
  320. #define VLDTR_E_CT_DUP                  EMAKEHR(0x125E) // ComType has dup.
  321. #define VLDTR_E_MAR_DUP                 EMAKEHR(0x125F) // ManifestResource has dup.
  322. #define VLDTR_E_MAR_NOTPUBPRIV          EMAKEHR(0x1260) // ManifestResource is neither Public not Private.
  323. #define VLDTR_E_TD_ENUMNOVALUE          EMAKEHR(0x1261) // Enum has no "value__" field.
  324. #define VLDTR_E_TD_ENUMVALSTATIC        EMAKEHR(0x1262) // Enum's "value__" field is static.
  325. #define VLDTR_E_TD_ENUMVALNOTSN         EMAKEHR(0x1263) // Enum's "value__" field is not SpecialName.
  326. #define VLDTR_E_TD_ENUMFLDNOTST         EMAKEHR(0x1264) // Enum's field is not static.
  327. #define VLDTR_E_TD_ENUMFLDNOTLIT        EMAKEHR(0x1265) // Enum's field is not literal.
  328. #define VLDTR_E_TD_ENUMNOLITFLDS        EMAKEHR(0x1266) // Enum has no literal fields.
  329. #define VLDTR_E_TD_ENUMFLDSIGMISMATCH   EMAKEHR(0x1267) // Enum's field sig does not match value__ sig.
  330. #define VLDTR_E_TD_ENUMVALNOT1ST        EMAKEHR(0x1268) // Enum's "value__" field is not first.
  331. #define VLDTR_E_FD_NOTVALUERTSN            EMAKEHR(0x1269) // Field is RTSpecialName but name is not "value__".
  332. #define VLDTR_E_FD_VALUEPARNOTENUM        EMAKEHR(0x126A) // Field "value__" in not Enum class.
  333. #define VLDTR_E_FD_INSTINIFACE            EMAKEHR(0x126B) // Instance field in interface.
  334. #define VLDTR_E_FD_NOTPUBINIFACE        EMAKEHR(0x126C) // Non-public field in interface.
  335. #define VLDTR_E_FMD_GLOBALNOTPUBPRIVSC    EMAKEHR(0x126D) // Global field/method neither Public nor PrivateScope.
  336. #define VLDTR_E_FMD_GLOBALNOTSTATIC        EMAKEHR(0x126E) // Global field/method not static.
  337. #define VLDTR_E_FD_GLOBALNORVA            EMAKEHR(0x126F) // Global field has no RVA.
  338. #define VLDTR_E_FD_GLOBALZERORVA        EMAKEHR(0x1270) // Global field has zero RVA.
  339. #define VLDTR_E_FD_MARKEDNOMARSHAL        EMAKEHR(0x1271) // Field is marked marshaled but has no marshaling rec.
  340. #define VLDTR_E_FD_MARSHALNOTMARKED        EMAKEHR(0x1272) // Field has marshaling rec but is not marked marshaled.
  341. #define VLDTR_E_FD_MARKEDNODEFLT        EMAKEHR(0x1273) // Field is marked HasDefault but has no const value.
  342. #define VLDTR_E_FD_DEFLTNOTMARKED        EMAKEHR(0x1274) // Field has const value rec but is not marked HasDefault.
  343. #define VLDTR_E_FMD_MARKEDNOSECUR        EMAKEHR(0x1275) // Field/method is marked HasSecurity but has no security rec.
  344. #define VLDTR_E_FMD_SECURNOTMARKED        EMAKEHR(0x1276) // Field/method has security rec but is not marked HasSecurity.
  345. #define VLDTR_E_FMD_PINVOKENOTSTATIC    EMAKEHR(0x1277) // Field/method is PInvoke but is not marked Static.
  346. #define VLDTR_E_FMD_MARKEDNOPINVOKE     EMAKEHR(0x1278) // Field/method is marked PInvoke but has no ImplMap.
  347. #define VLDTR_E_FMD_PINVOKENOTMARKED     EMAKEHR(0x1279) // Field/method has ImplMap but is not marked PInvoke.
  348. #define VLDTR_E_FMD_BADIMPLMAP             EMAKEHR(0x127A) // Field/method has invalid ImplMap
  349. #define VLDTR_E_IMAP_BADMODREF             EMAKEHR(0x127B) // ImplMap has invalid ModuleRef
  350. #define VLDTR_E_IMAP_BADMEMBER             EMAKEHR(0x127C) // ImplMap has invalid MemberForwarded
  351. #define VLDTR_E_IMAP_BADIMPORTNAME         EMAKEHR(0x127D) // ImplMap has invalid ImportName
  352. #define VLDTR_E_IMAP_BADCALLCONV         EMAKEHR(0x127E) // ImplMap has invalid call conv
  353. #define VLDTR_E_FMD_BADACCESSFLAG         EMAKEHR(0x127F) // Field/method has invalid access flag
  354. #define VLDTR_E_FD_INITONLYANDLITERAL     EMAKEHR(0x1280) // Field is InitOnly and Literal
  355. #define VLDTR_E_FD_LITERALNOTSTATIC     EMAKEHR(0x1281) // Field is Literal but not Static
  356. #define VLDTR_E_FMD_RTSNNOTSN             EMAKEHR(0x1282) // Field/method is RTSpec.Name but not Spec.Name
  357. #define VLDTR_E_MD_ABSTPARNOTABST         EMAKEHR(0x1283) // Method is abstract, parent is not
  358. #define VLDTR_E_MD_NOTSTATABSTININTF     EMAKEHR(0x1284) // Method not static or abstract in interface
  359. #define VLDTR_E_MD_NOTPUBININTF             EMAKEHR(0x1285) // Method not public in interface
  360. #define VLDTR_E_MD_CTORININTF             EMAKEHR(0x1286) // ctor in interface
  361. #define VLDTR_E_MD_GLOBALCTORCCTOR         EMAKEHR(0x1287) // global ctor or cctor
  362. #define VLDTR_E_MD_CTORSTATIC             EMAKEHR(0x1288) // static ctor
  363. #define VLDTR_E_MD_CTORNOTSNRTSN         EMAKEHR(0x1289) // ctor,cctor not marked SpecialName,RTSpecialName
  364. #define VLDTR_E_MD_CTORVIRT                 EMAKEHR(0x128A) // virtual ctor,cctor
  365. #define VLDTR_E_MD_CTORABST                 EMAKEHR(0x128B) // abstract ctor,cctor
  366. #define VLDTR_E_MD_CCTORNOTSTATIC         EMAKEHR(0x128C) // instance cctor
  367. #define VLDTR_E_MD_ZERORVA                 EMAKEHR(0x128D) // RVA=0, method not abstract or pinvoke or runtime, or reverse
  368. #define VLDTR_E_MD_FINNOTVIRT             EMAKEHR(0x128E) // Method is final and not virtual
  369. #define VLDTR_E_MD_STATANDFINORVIRT         EMAKEHR(0x128F) // Method is static and final or virtual
  370. #define VLDTR_E_MD_ABSTANDFINAL             EMAKEHR(0x1290) // Method is abstract and final
  371. #define VLDTR_E_MD_ABSTANDIMPL             EMAKEHR(0x1291) // Method is abstract and implemented
  372. #define VLDTR_E_MD_ABSTANDPINVOKE         EMAKEHR(0x1292) // Method is abstract and pinvoke
  373. #define VLDTR_E_MD_ABSTNOTVIRT             EMAKEHR(0x1293) // Method is abstract and not virtual
  374. #define VLDTR_E_MD_NOTABSTNOTIMPL         EMAKEHR(0x1294) // Method is not abstract and not implemented
  375. #define VLDTR_E_MD_NOTABSTBADFLAGSRVA     EMAKEHR(0x1295) // Method is not abstract and not (RVA!=0 or pinvoke or runtime)
  376. #define VLDTR_E_MD_PRIVSCOPENORVA         EMAKEHR(0x1296) // Method is PrivateScope and has RVA==0
  377. #define VLDTR_E_MD_GLOBALABSTORVIRT         EMAKEHR(0x1297) // Global method is abstract or virtual
  378. #define VLDTR_E_SIG_LONGFORM             EMAKEHR(0x1298) // Signature uses long form
  379. #define VLDTR_E_MD_MULTIPLESEMANTICS     EMAKEHR(0x1299) // Method has multiple semantics (warning)
  380. #define VLDTR_E_MD_INVALIDSEMANTICS     EMAKEHR(0x129A) // Method has invalid semantics (not event or prop)
  381. #define VLDTR_E_MD_SEMANTICSNOTEXIST     EMAKEHR(0x129B) // Method has semantics assoc that does not exist
  382. #define VLDTR_E_TD_VTEXTSNOTVT             EMAKEHR(0x129C) // Value class extends not System.ValueType (warning,CLS)
  383. #define VLDTR_E_FMD_GLOBALITEM             EMAKEHR(0x129D) // Global field/method (warning,CLS)
  384. #define VLDTR_E_MD_MULTSEMANTICFLAGS     EMAKEHR(0x129E) // Method has multiple semantic flags set
  385. #define VLDTR_E_MD_NOSEMANTICFLAGS         EMAKEHR(0x129F) // Method has no semantic flags set
  386. #define VLDTR_E_FD_FLDINIFACE             EMAKEHR(0x12A0) // Field in Interface (warning, CLS)
  387. #define VLDTR_E_AS_HASHALGID             EMAKEHR(0x12A1) // Unrecognized Hash Alg ID (warning)
  388. #define VLDTR_E_AS_PROCID                 EMAKEHR(0x12A2) // Unrecognized Processor ID in Assembly(warning)
  389. #define VLDTR_E_AR_PROCID                 EMAKEHR(0x12A3) // Unrecognized Processor ID in AssemblyRef(warning)
  390. #define VLDTR_E_AR_INVALIDEXELOC         EMAKEHR(0x12A4) // Invalid execution location in AssemblyRef
  391. #define VLDTR_E_AS_BADFLAGS                 EMAKEHR(0x12A5) // Invalid flags in Assembly
  392. #define VLDTR_E_TR_HASTYPEDEF             EMAKEHR(0x12A6) // There is TypeDef with same name as TypeRef (warning)
  393. #define VLDTR_E_IFACE_BADIMPL             EMAKEHR(0x12A7) // In InterfaceImpl, the implementing token is not TypeDef
  394. #define VLDTR_E_IFACE_BADIFACE             EMAKEHR(0x12A8) // In InterfaceImpl, the implemented token is not TypeDef or TypeRef
  395. #define VLDTR_E_TD_SECURNOTMARKED         EMAKEHR(0x12A9) // TypeDef has security rec but not marked HasSecurity
  396. #define VLDTR_E_TD_MARKEDNOSECUR         EMAKEHR(0x12AA) // TypeDef marked HasSecurity but has no security rec
  397. #define VLDTR_E_CT_BADTYPEDEF             EMAKEHR(0x12AB) // COMType has invalid TypeDef
  398. #define VLDTR_E_CT_BADIMPL                 EMAKEHR(0x12AC) // COMType has invalid Implementation
  399. #define VLDTR_E_CT_NAMEMISMATCH             EMAKEHR(0x12AD) // COMType's name does not match TypeDef's
  400. #define VLDTR_E_CT_BADEXELOC             EMAKEHR(0x12AE) // COMType has invalid ExecutionLocation
  401. #define VLDTR_E_MI_BADCLASS                 EMAKEHR(0x12AF) // MethodImpl has invalid Class token
  402. #define VLDTR_E_MI_CLASSISINTF             EMAKEHR(0x12B0) // MethodImpl declared in Interface
  403. #define VLDTR_E_MI_BADDECL                 EMAKEHR(0x12B1) // MethodImpl has invalid MethodDeclaration token
  404. #define VLDTR_E_MI_BADBODY                 EMAKEHR(0x12B2) // MethodImpl has invalid MethodBody token
  405. #define VLDTR_E_MI_DUP                     EMAKEHR(0x12B3) // MethodImpl has duplicate
  406. #define VLDTR_E_FD_BADPARENT             EMAKEHR(0x12B4) // Bad field parent
  407. #define VLDTR_E_MD_PARAMOUTOFSEQ         EMAKEHR(0x12B5) // Param out of sequence (warning)
  408. #define VLDTR_E_MD_PARASEQTOOBIG         EMAKEHR(0x12B6) // Param's sequence num exceeds num of args
  409. #define VLDTR_E_MD_PARMMARKEDNOMARSHAL     EMAKEHR(0x12B7) // Param marked HasMarshal, has no marshaling info
  410. #define VLDTR_E_MD_PARMMARSHALNOTMARKED    EMAKEHR(0x12B8) // Param has marshaling info, not marked HasMarshal
  411. #define VLDTR_E_MD_PARMMARKEDNODEFLT    EMAKEHR(0x12BA) // Param marked HasDefault, has no const value
  412. #define VLDTR_E_MD_PARMDEFLTNOTMARKED    EMAKEHR(0x12BB) // Param has const value, not marked HasDefault
  413. #define VLDTR_E_PR_BADSCOPE                EMAKEHR(0x12BC) // Prop has invalid scope
  414. #define VLDTR_E_PR_NONAME                EMAKEHR(0x12BD) // Prop has no name
  415. #define VLDTR_E_PR_NOSIG                EMAKEHR(0x12BE) // Prop has no signature
  416. #define VLDTR_E_PR_DUP                    EMAKEHR(0x12BF) // Prop has a duplicate
  417. #define VLDTR_E_PR_BADCALLINGCONV        EMAKEHR(0x12C0) // Prop has bad calling convention
  418. #define VLDTR_E_PR_MARKEDNODEFLT        EMAKEHR(0x12C1) // Prop marked HasDefault, has no const value
  419. #define VLDTR_E_PR_DEFLTNOTMARKED        EMAKEHR(0x12C2) // Prop has const value, not marked HasDefault
  420. #define VLDTR_E_PR_BADSEMANTICS            EMAKEHR(0x12C3) // Prop has method not (Setter,Getter, or Other)
  421. #define VLDTR_E_PR_BADMETHOD            EMAKEHR(0x12C4) // Prop has method with invalid token
  422. #define VLDTR_E_PR_ALIENMETHOD            EMAKEHR(0x12C5) // Prop has method from another class
  423. #define VLDTR_E_PR_BADBACKFIELD            EMAKEHR(0x12C6) // Prop has backing field with invalid token
  424. #define VLDTR_E_PR_ALIENBACKFIELD        EMAKEHR(0x12C7) // Prop has backing field from another class
  425. #define VLDTR_E_EV_BADSCOPE                EMAKEHR(0x12C8) // Event has invalid scope
  426. #define VLDTR_E_EV_NONAME                EMAKEHR(0x12CA) // Event has no name
  427. #define VLDTR_E_EV_DUP                    EMAKEHR(0x12CB) // Event has a duplicate
  428. #define VLDTR_E_EV_BADEVTYPE            EMAKEHR(0x12CC) // Event has invalid EventType
  429. #define VLDTR_E_EV_EVTYPENOTCLASS        EMAKEHR(0x12CD) // Event's EventType is not a class
  430. #define VLDTR_E_EV_BADSEMANTICS            EMAKEHR(0x12CE) // Event has method not (AddOn,RemoveOn,Fire,Other)
  431. #define VLDTR_E_EV_BADMETHOD            EMAKEHR(0x12CF) // Event has method with invalid token
  432. #define VLDTR_E_EV_ALIENMETHOD            EMAKEHR(0x12D0) // Event has method from another class
  433. #define VLDTR_E_EV_NOADDON                EMAKEHR(0x12D1) // Event has no AddOn method
  434. #define VLDTR_E_EV_NOREMOVEON            EMAKEHR(0x12D2) // Event has no RemoveOn method
  435. #define VLDTR_E_FMD_HASSECURININTF        EMAKEHR(0x12D3) // Method/field in interface  has security
  436. #define VLDTR_E_TD_IFACEHASSECUR        EMAKEHR(0x12D4) // Interface  has security
  437. #define VLDTR_E_DS_BADOWNER                EMAKEHR(0x12D5) // Decl.security has invalid owner token
  438. #define VLDTR_E_DS_BADFLAGS                EMAKEHR(0x12D6) // Decl.security has invalid action flags
  439. #define VLDTR_E_DS_NOBLOB                EMAKEHR(0x12D7) // Decl.security has no permission blob
  440. #define VLDTR_E_MAR_BADIMPL                EMAKEHR(0x12D8) // Manifest resource has invalid Implementation
  441. #define VLDTR_E_MR_VARARGCALLINGCONV    EMAKEHR(0x12DA) // MemberRef has VARARG calling conv. (CLS warning)
  442. #define VLDTR_E_MD_CTORNOTVOID            EMAKEHR(0x12DB) // .ctor,.cctor returning not void
  443. #define VLDTR_E_EV_FIRENOTVOID            EMAKEHR(0x12DC) // Fire method returning not void
  444. #define VLDTR_E_AS_BADLOCALE            EMAKEHR(0x12DD) // Invalid locale
  445. #define VLDTR_E_SIG_UNMANAGEDVT            EMAKEHR(0x12DE) // UnmanagedValueType as a field's type
  446. #define VLDTR_E_SIG_SENTINMETHODDEF        EMAKEHR(0x12DF) // E_T_SENTINEL in MethodDef signature
  447. #define VLDTR_E_SIG_SENTMUSTVARARG        EMAKEHR(0x12E0) // E_T_SENTINEL <=> VARARG
  448. #define VLDTR_E_SIG_MULTSENTINELS        EMAKEHR(0x12E1) // Multiple E_T_SENTINELs
  449. #define VLDTR_E_SIG_LASTSENTINEL        EMAKEHR(0x12E2) // E_T_SENTINEL not followed by type
  450. #define VLDTR_E_SIG_MISSARG                EMAKEHR(0x12E3) // Signature missing argument
  451. #define VLDTR_E_SIG_BYREFINFIELD        EMAKEHR(0x12E4) // Field of ByRef type
  452. #define VLDTR_E_MD_SYNCMETHODINVTYPE    EMAKEHR(0x12E5) // Synchronized method in value class
  453.              
  454.                                   
  455. #define VLDTR_E_INTERRUPTED             EMAKEHR(0x12FE) // Validator has been interrupted by the VEHandler.
  456. #define VLDTR_E_NOTINIT                 EMAKEHR(0x12FF) // Validator failed to initialize correctly.
  457.  
  458. //**** COM+ Debugging Services errors
  459. #define CORDBG_E_UNRECOVERABLE_ERROR    EMAKEHR(0x1300) // Unrecoverable API error.
  460. #define CORDBG_E_PROCESS_TERMINATED     EMAKEHR(0x1301) // Process was terminated.
  461. #define CORDBG_E_PROCESS_NOT_SYNCHRONIZED EMAKEHR(0x1302) // Process not synchronized.
  462. #define CORDBG_E_CLASS_NOT_LOADED       EMAKEHR(0x1303) // A class is not loaded.
  463. #define CORDBG_E_IL_VAR_NOT_AVAILABLE   EMAKEHR(0x1304) // An IL variable is not available at the current native IP.
  464. #define CORDBG_E_BAD_REFERENCE_VALUE    EMAKEHR(0x1305) // A reference value was found to be bad during dereferencing.
  465. #define CORDBG_E_FIELD_NOT_AVAILABLE    EMAKEHR(0x1306) // A field in a class is not available, probably because the runtime optimized it away.
  466. #define CORDBG_E_NON_NATIVE_FRAME       EMAKEHR(0x1307) // "Native frame only" operation on non-native frame
  467. #define CORDBG_E_NONCONTINUABLE_EXCEPTION EMAKEHR(0x1308) // Tried to continue on an exception that doesn't allow continuation.  Only IL "break" instruction allows continuation
  468. #define CORDBG_E_CODE_NOT_AVAILABLE     EMAKEHR(0x1309) // For whatever reason, the code is currently unavailable
  469. #define CORDBG_E_FUNCTION_NOT_IL        EMAKEHR(0x130A) // Attempt to get a ICorDebugFunction for a function that is not IL.
  470. #define CORDBG_S_BAD_START_SEQUENCE_POINT SMAKEHR(0x130B) //Attempt to SetIP when not at a sequence point
  471. #define CORDBG_S_BAD_END_SEQUENCE_POINT  SMAKEHR(0x130C) //Attempt to SetIP when not going to a sequence point.  If both
  472.                     // this and CORDBG_E_BAD_START_SEQUENCE_POINT are true, only CORDBG_E_BAD_START_SEQUENCE_POINT
  473.                     // will be reported.
  474. #define CORDBG_E_INSUFFICIENT_INFO_FOR_SET_IP SMAKEHR(0x130D) //SetIP is possible, but the debugger doesn't
  475.                     // enough info to fix variable locations, GC refs, or anything else.  Use at your own
  476.                     // risk.
  477. #define CORDBG_E_CANT_SET_IP_INTO_FINALLY EMAKEHR(0x130E) //SetIP isn't possible, because SetIP would move EIP
  478.                     // from outside of an exception handling finally clause to a point inside of one.
  479. #define CORDBG_E_CANT_SET_IP_OUT_OF_FINALLY EMAKEHR(0x130F) //While unwinding for an exception (because the EE calls the
  480.     // finally during the unwind).  If you stepped into the code b/c you walked off the end of the try, then you can 
  481.     // leave the finally.
  482.  
  483. #define CORDBG_E_CANT_SET_IP_INTO_CATCH EMAKEHR(0x1310) //SetIP isn't possible, because SetIP would move EIP
  484.                     // from outside of an exception handling catch clause to a point inside of one.
  485. #define CORDBG_E_SET_IP_NOT_ALLOWED_ON_NONLEAF_FRAME EMAKEHR(0x1311)
  486. #define CORDBG_E_SET_IP_IMPOSSIBLE       EMAKEHR(0x1312)
  487. #define CORDBG_E_FUNC_EVAL_BAD_START_POINT EMAKEHR(0x1313)
  488. #define CORDBG_E_INVALID_OBJECT EMAKEHR(0x1314)
  489. #define CORDBG_E_FUNC_EVAL_NOT_COMPLETE EMAKEHR(0x1315)
  490. #define CORDBG_S_FUNC_EVAL_HAS_NO_RESULT SMAKEHR(0x1316)
  491. #define CORDBG_S_VALUE_POINTS_TO_VOID SMAKEHR(0x1317)
  492. #define CORDBG_E_INPROC_NOT_IMPL EMAKEHR(0x1318) // The inproc version of our API doesn't implement this function
  493. #define CORDBG_S_FUNC_EVAL_ABORTED SMAKEHR(0x1319) // The func eval completed, but was aborted.
  494. #define CORDBG_E_STATIC_VAR_NOT_AVAILABLE EMAKEHR(0x131A) // A static variable isn't available because it hasn't been initialized yet.
  495. #define CORDBG_E_OBJECT_IS_NOT_COPYABLE_VALUE_CLASS EMAKEHR(0x131B)
  496. #define CORDBG_E_CANT_SETIP_INTO_OR_OUT_OF_FILTER EMAKEHR(0x131C) //SetIP can't leave or enter a filter
  497. #define CORDBG_E_CANT_CHANGE_JIT_SETTING_FOR_ZAP_MODULE EMAKEHR(0x131D) // You can't change JIT settings for ZAP modules.
  498. #define CORDBG_E_BAD_THREAD_STATE EMAKEHR(0x132d) // The state of the thread is invalid. For example, if you try
  499.     // and do a stack trace on a dead thread.
  500.  
  501. //**** COM+ Profiling Services errors
  502. #define CORPROF_E_FUNCTION_NOT_COMPILED EMAKEHR(0x1350)     // Function not yet compiled.
  503. #define CORPROF_E_DATAINCOMPLETE        EMAKEHR(0x1351)     // The ID is not fully loaded/defined yet.
  504. #define CORPROF_E_NOT_REJITABLE_METHODS EMAKEHR(0x1352)    // The Module is not configured for updateable methods.
  505. #define CORPROF_E_CANNOT_UPDATE_METHOD    EMAKEHR(0x1353)        // The Method could not be updated for re-jit.
  506. #define CORPROF_E_FUNCTION_NOT_IL       EMAKEHR(0x1354)        // The Method has no associated IL
  507.  
  508. //**** Security Encoding errors
  509. #define SECURITY_E_XML_TO_ASN_ENCODING  EMAKEHR(0x1400) // Failed to convert XML to ASN 
  510.  
  511. //**** Reserved.
  512. #define CLDB_E_INTERNALERROR            EMAKEHR(0x1fff)
  513.  
  514. // ******************
  515. // Debugger & Profiler errors
  516. // ******************
  517.  
  518.  
  519. // ******************
  520. // Security errors
  521. // ******************
  522.  
  523. #define CORSEC_E_DECODE_SET             EMAKEHR(0x1410)         // Failure decoding permission set
  524. #define CORSEC_E_ENCODE_SET             EMAKEHR(0x1411)         // Failure encoding permission set
  525. #define CORSEC_E_UNSUPPORTED_FORMAT     EMAKEHR(0x1412)         // Unrecognized encoding format
  526. #define SN_CRYPTOAPI_CALL_FAILED        EMAKEHR(0x1413)         // StrongName APIs not supported on system
  527. #define SN_NO_SUITABLE_CSP              EMAKEHR(0x1414)         // StrongName APIs couldn't locate a matching CSP
  528. #define CORSEC_E_INVALID_ATTR           EMAKEHR(0x1415)         // Invalid security custom attribute
  529. #define CORSEC_E_POLICY_EXCEPTION       EMAKEHR(0x1416)         // PolicyException thrown
  530. #define CORSEC_E_MIN_GRANT_FAIL         EMAKEHR(0x1417)         // Failed to grant minimum permission requests
  531. #define CORSEC_E_NO_EXEC_PERM           EMAKEHR(0x1418)         // Failed to grant permission to execute
  532.  
  533. //**** Isolated Storage Errors 1450 - 14FF
  534. #define ISS_E_ISOSTORE                   EMAKEHR(0x1450L)
  535.  
  536. #define ISS_E_OPEN_STORE_FILE            EMAKEHR(0x1460L)
  537. #define ISS_E_OPEN_FILE_MAPPING          EMAKEHR(0x1461L)
  538. #define ISS_E_MAP_VIEW_OF_FILE           EMAKEHR(0x1462L)
  539. #define ISS_E_GET_FILE_SIZE              EMAKEHR(0x1463L)
  540. #define ISS_E_CREATE_MUTEX               EMAKEHR(0x1464L)
  541. #define ISS_E_LOCK_FAILED                EMAKEHR(0x1465L)
  542. #define ISS_E_FILE_WRITE                 EMAKEHR(0x1466L)
  543. #define ISS_E_SET_FILE_POINTER           EMAKEHR(0x1467L)
  544. #define ISS_E_CREATE_DIR                 EMAKEHR(0x1468L)
  545.  
  546. #define ISS_E_CORRUPTED_STORE_FILE       EMAKEHR(0x1480L)
  547. #define ISS_E_STORE_VERSION              EMAKEHR(0x1481L)
  548. #define ISS_E_FILE_NOT_MAPPED            EMAKEHR(0x1482L)
  549. #define ISS_E_BLOCK_SIZE_TOO_SMALL       EMAKEHR(0x1483L)
  550. #define ISS_E_ALLOC_TOO_LARGE            EMAKEHR(0x1484L)
  551. #define ISS_E_USAGE_WILL_EXCEED_QUOTA    EMAKEHR(0x1485L)
  552. #define ISS_E_TABLE_ROW_NOT_FOUND        EMAKEHR(0x1486L)
  553.  
  554. #define ISS_E_DEPRECATE                  EMAKEHR(0x14A0L)
  555. #define ISS_E_CALLER                     EMAKEHR(0x14A1L)
  556. #define ISS_E_PATH_LENGTH                EMAKEHR(0x14A2L)
  557. #define ISS_E_MACHINE                    EMAKEHR(0x14A3L)
  558.  
  559. #define ISS_E_ISOSTORE_START             EMAKEHR(0x1450L)
  560. #define ISS_E_ISOSTORE_END               EMAKEHR(0x14FFL)
  561.  
  562. // ******************
  563. // Classlib errors
  564. // ******************
  565.  
  566. //
  567. // MessageId: COR_E_ACCESS
  568. //
  569. // MessageText: 
  570. //
  571. // Access is denied.
  572. //
  573. #define COR_E_ACCESS  E_ACCESSDENIED    // 0x80070005
  574.  
  575.  
  576. //
  577. // MessageId: COR_E_APPLICATION
  578. //
  579. // MessageText: 
  580. //
  581. // The base class for all "less serious" exceptions that must be declared or caugh
  582. //
  583. #define COR_E_APPLICATION  EMAKEHR(0x1600L) 
  584.  
  585.  
  586. //
  587. // MessageId: COR_E_ARGUMENT
  588. //
  589. // MessageText: 
  590. //
  591. // An argument does not meet the contract of the method.
  592. //
  593. #define COR_E_ARGUMENT  E_INVALIDARG        // 0x80070057
  594.  
  595.  
  596. //
  597. // MessageId: COR_E_ARGUMENTOUTOFRANGE
  598. //
  599. // MessageText: 
  600. //
  601. // An argument was out of it's legal range.
  602. //
  603. #define COR_E_ARGUMENTOUTOFRANGE  EMAKEHR(0x1502L) 
  604.  
  605.  
  606. //
  607. // MessageId: COR_E_ARITHMETIC
  608. //
  609. // MessageText: 
  610. //
  611. // Overflow or underflow in mathematical operations.
  612. //
  613. #define COR_E_ARITHMETIC  HRESULT_FROM_WIN32(ERROR_ARITHMETIC_OVERFLOW)     // 0x80070216
  614.  
  615.  
  616. //
  617. // MessageId: COR_E_ARRAYTYPEMISMATCH
  618. //
  619. // MessageText: 
  620. //
  621. // Attempted to store an object of the wrong type in an array
  622. //
  623. #define COR_E_ARRAYTYPEMISMATCH  EMAKEHR(0x1503L) 
  624.  
  625.  
  626.  
  627.  
  628. //
  629. // MessageId: COR_E_CONTEXTMARSHAL
  630. //
  631. // MessageText: 
  632. //
  633. // 
  634. //
  635. #define COR_E_CONTEXTMARSHAL  EMAKEHR(0x1504L) 
  636.  
  637.  
  638. //
  639. // MessageId: COR_E_CORE
  640. //
  641. // MessageText: 
  642. //
  643. // Base class for EE and other halting exceptions
  644. //
  645. #define COR_E_CORE  EMAKEHR(0x1526L) 
  646.  
  647.  
  648. //
  649. // MessageId: COR_E_DIVIDEBYZERO
  650. //
  651. // MessageText: 
  652. //
  653. // Attempted to divide a number by zero. (Note, VB in particular needs this except
  654. //
  655. #define COR_E_DIVIDEBYZERO  EMAKEHR(0x1505L) 
  656.  
  657.  
  658. //
  659. // MessageId: COR_E_EXCEPTION
  660. //
  661. // MessageText: 
  662. //
  663. // Base class for all exceptions in the runtime
  664. //
  665. #define COR_E_EXCEPTION  EMAKEHR(0x1500L) 
  666.  
  667.  
  668. //
  669. // MessageId: COR_E_EXECUTIONENGINE
  670. //
  671. // MessageText: 
  672. //
  673. // An Internal error happened in the EE
  674. //
  675. #define COR_E_EXECUTIONENGINE  EMAKEHR(0x1506L) 
  676.  
  677.  
  678. //
  679. // MessageId: COR_E_FIELDACCESS
  680. //
  681. // MessageText: 
  682. //
  683. // 
  684. //
  685. #define COR_E_FIELDACCESS  EMAKEHR(0x1507L) 
  686.  
  687.  
  688. //
  689. // MessageId: COR_E_FORMAT
  690. //
  691. // MessageText: 
  692. //
  693. // The format of one arguments does not meet the contract of the method.
  694. //
  695. #define COR_E_FORMAT  EMAKEHR(0x1537L)
  696.  
  697.  
  698. //
  699. // MessageId: COR_E_BADIMAGEFORMAT
  700. //
  701. // MessageText: 
  702. //
  703. // The format of DLL or executable being loaded is invalid.
  704. //
  705. #define COR_E_BADIMAGEFORMAT  _HRESULT_TYPEDEF_(0x8007000BL) 
  706.  
  707.  
  708. //
  709. // MessageId: COR_E_INDEXOUTOFRANGE
  710. //
  711. // MessageText: 
  712. //
  713. // Attempted to access an element within an array by using an index that is not wit
  714. //
  715. #define COR_E_INDEXOUTOFRANGE  EMAKEHR(0x1508L) 
  716.  
  717.  
  718. //
  719. // MessageId: COR_E_INVALIDCAST
  720. //
  721. // MessageText: 
  722. //
  723. // Indicates a bad cast condition
  724. //
  725. #define COR_E_INVALIDCAST  E_NOINTERFACE        // 0x80004002
  726.  
  727.  
  728. //
  729. // MessageId: COR_E_INVALIDOPERATION
  730. //
  731. // MessageText: 
  732. //
  733. // An operation is not legal in the current state.
  734. //
  735. #define COR_E_INVALIDOPERATION  EMAKEHR(0x1509L) 
  736.  
  737.  
  738. //
  739. // MessageId: COR_E_METHODACCESS
  740. //
  741. // MessageText: 
  742. //
  743. // 
  744. //
  745. #define COR_E_METHODACCESS  EMAKEHR(0x1510L) 
  746.  
  747.  
  748. //
  749. // MessageId: COR_E_MISSINGFIELD
  750. //
  751. // MessageText: 
  752. //
  753. // An attempt was made to dynamicly access a field that does not exist
  754. //
  755. #define COR_E_MISSINGFIELD  EMAKEHR(0x1511L) 
  756.  
  757.  
  758. //
  759. // MessageId: COR_E_MISSINGMANIFESTRESOURCE
  760. //
  761. // MessageText: 
  762. //
  763. // An expected resource in the assembly manifest was missing.
  764. //
  765. #define COR_E_MISSINGMANIFESTRESOURCE  EMAKEHR(0x1532L) 
  766.  
  767.  
  768. //
  769. // MessageId: COR_E_MISSINGMEMBER
  770. //
  771. // MessageText: 
  772. //
  773. // An attempt was made to dynamically invoke or access a field or method
  774. // that does not exist.
  775. //
  776. #define COR_E_MISSINGMEMBER  EMAKEHR(0x1512L) 
  777.  
  778.  
  779. //
  780. // MessageId: COR_E_MISSINGMETHOD
  781. //
  782. // MessageText: 
  783. //
  784. // An attempt was made to dynamically invoke a method that does not exist
  785. //
  786. #define COR_E_MISSINGMETHOD  EMAKEHR(0x1513L) 
  787.  
  788.  
  789. //
  790. // MessageId: COR_E_MULTICASTNOTSUPPORTED
  791. //
  792. // MessageText: 
  793. //
  794. // Attempted to combine delegates that are not multicast
  795. //
  796. #define COR_E_MULTICASTNOTSUPPORTED  EMAKEHR(0x1514L) 
  797.  
  798.  
  799. //
  800. // MessageId: COR_E_NOTFINITENUMBER
  801. //
  802. // MessageText: 
  803. //
  804. //  Thrown if value (a floating point number) is either the not a number value (NaN) or +- infinity value
  805. //    VB needs this stuff
  806.  
  807. #define COR_E_NOTFINITENUMBER     EMAKEHR(0x1528L)
  808.  
  809. //
  810. // MessageId: COR_E_DUPLICATEWAITOBJECT
  811. //
  812. // MessageText: 
  813. //
  814. // An object appears more than once in the wait objects array.
  815. //
  816.  
  817. #define COR_E_DUPLICATEWAITOBJECT    EMAKEHR(0x1529L)
  818.  
  819. //
  820. // MessageId: COR_E_NOTSUPPORTED
  821. //
  822. // MessageText: 
  823. //
  824. // The method is not supported
  825. //
  826.  
  827. #define COR_E_NOTSUPPORTED  EMAKEHR(0x1515L) 
  828.  
  829.  
  830. //
  831. // MessageId: COR_E_NULLREFERENCE
  832. //
  833. // MessageText: 
  834. //
  835. // Dereferencing a null reference. In general class libraries should not throw this
  836. //
  837. #define COR_E_NULLREFERENCE  E_POINTER      // 0x80004003
  838.  
  839.  
  840. //
  841. // MessageId: COR_E_OUTOFMEMORY
  842. //
  843. // MessageText: 
  844. //
  845. // The EE thows this exception when no more memory is avaible to continue execution
  846. //
  847. #define COR_E_OUTOFMEMORY  E_OUTOFMEMORY        // 0x8007000E
  848.  
  849.  
  850. //
  851. // MessageId: COR_E_OVERFLOW
  852. //
  853. // MessageText: 
  854. //
  855. // 
  856. //
  857. #define COR_E_OVERFLOW  EMAKEHR(0x1516L) 
  858.  
  859.  
  860. //
  861. // MessageId: COR_E_RANK
  862. //
  863. // MessageText: 
  864. //
  865. // An array has the wrong number of dimensions for a particular operation.
  866. //
  867. #define COR_E_RANK  EMAKEHR(0x1517L) 
  868.  
  869.  
  870. //
  871. // MessageId: COR_E_REMOTING
  872. //
  873. // MessageText: 
  874. //
  875. // An error relating to remoting occurred.
  876. //
  877. #define COR_E_REMOTING  EMAKEHR(0x150BL) 
  878.  
  879.  
  880. //
  881. // MessageId: COR_E_SECURITY
  882. //
  883. // MessageText: 
  884. //
  885. // An error relating to security occured.
  886. //
  887. #define COR_E_SECURITY  EMAKEHR(0x150AL) 
  888.  
  889.  
  890. //
  891. //
  892. // MessageID: COR_E_SERIALIZATION
  893. //
  894. // MessageText:
  895. //
  896. // An error relating to serialization has occurred.
  897. #define COR_E_SERIALIZATION EMAKEHR(0x150CL)
  898.  
  899.  
  900. //
  901. // MessageId: COR_E_STACKOVERFLOW
  902. //
  903. // MessageText: 
  904. //
  905. // Is raised by the EE when the execution stack overflows as it is attempting to ex
  906. //
  907. #define COR_E_STACKOVERFLOW  HRESULT_FROM_WIN32(ERROR_STACK_OVERFLOW)       // 0x800703E9
  908.  
  909.  
  910. //
  911. // MessageId: COR_E_SYNCHRONIZATIONLOCK
  912. //
  913. // MessageText: 
  914. //
  915. // Wait(), Notify() or NotifyAll() was called from an unsynchronized ** block of c
  916. //
  917. #define COR_E_SYNCHRONIZATIONLOCK  EMAKEHR(0x1518L) 
  918.  
  919.  
  920. //
  921. // MessageId: COR_E_SYSTEM
  922. //
  923. // MessageText: 
  924. //
  925. // The base class for the runtime's "less serious" exceptions
  926. //
  927. #define COR_E_SYSTEM  EMAKEHR(0x1501L) 
  928.  
  929.  
  930. //
  931. // MessageId: COR_E_THREADABORTED
  932. //
  933. // MessageText: 
  934. //
  935. // Thrown into a thread to cause it to abort. Not catchable. 
  936. //
  937. #define COR_E_THREADABORTED  EMAKEHR(0x1530L) 
  938.  
  939. //
  940. // MessageId: COR_E_THREADINTERRUPTED
  941. //
  942. // MessageText: 
  943. //
  944. // Indicates that the thread was interrupted from a waiting state
  945. //
  946. #define COR_E_THREADINTERRUPTED  EMAKEHR(0x1519L) 
  947.  
  948. //
  949. // MessageId: COR_E_THREADSTATE
  950. //
  951. // MessageText: 
  952. //
  953. // Indicate that the Thread class is in an invalid state for the method call
  954. //
  955. #define COR_E_THREADSTATE  EMAKEHR(0x1520L) 
  956.  
  957.  
  958. //
  959. // MessageId: COR_E_THREADSTOP
  960. //
  961. // MessageText: 
  962. //
  963. // Thrown into a thread to cause it to stop. This exception is typically not caught
  964. //
  965. #define COR_E_THREADSTOP  EMAKEHR(0x1521L) 
  966.  
  967.  
  968. //
  969. // MessageId: COR_E_TYPEINITIALIZATION
  970. //
  971. // MessageText: 
  972. //
  973. // An exception was thrown by a type's initializer (.cctor).
  974. //
  975. #define COR_E_TYPEINITIALIZATION  EMAKEHR(0x1534L) 
  976.  
  977.  
  978. //
  979. // MessageId: COR_E_TYPELOAD
  980. //
  981. // MessageText: 
  982. //
  983. // Could not find or load a specific type (class, enum, etc).
  984. //
  985. #define COR_E_TYPELOAD  EMAKEHR(0x1522L) 
  986.  
  987.  
  988. //
  989. // MessageId: COR_E_VERIFIER
  990. //
  991. // MessageText: 
  992. //
  993. // A verification failure occurred
  994. //
  995. #define COR_E_VERIFIER  EMAKEHR(0x150DL) 
  996.  
  997.  
  998. //
  999. // MessageId: COR_E_AMBIGUOUSMATCH
  1000. //
  1001. // MessageText: 
  1002. //
  1003. // 
  1004. //
  1005. #define COR_E_AMBIGUOUSMATCH  _HRESULT_TYPEDEF_(0x8000211DL) 
  1006.  
  1007.  
  1008. //
  1009. // MessageId: COR_E_INVALIDFILTERCRITERIA
  1010. //
  1011. // MessageText: 
  1012. //
  1013. // The given filter criteria does not match the filter contract.
  1014. //
  1015. #define COR_E_INVALIDFILTERCRITERIA  EMAKEHR(0x1601L) 
  1016.  
  1017.  
  1018. //
  1019. // MessageId: COR_E_REFLECTIONTYPELOAD
  1020. //
  1021. // MessageText: 
  1022. //
  1023. // Could not find or load a specific class that was requested through Reflection
  1024. //
  1025. #define COR_E_REFLECTIONTYPELOAD  EMAKEHR(0x1602L) 
  1026.  
  1027.  
  1028. //
  1029. // MessageId: COR_E_TARGET
  1030. //
  1031. // MessageText: 
  1032. //
  1033. // - If you attempt to invoke a non-static method with a null Object - If you atte
  1034. //
  1035. #define COR_E_TARGET  EMAKEHR(0x1603L) 
  1036.  
  1037.  
  1038. //
  1039. // MessageId: COR_E_TARGETINVOCATION
  1040. //
  1041. // MessageText: 
  1042. //
  1043. // If the method called throws an exception
  1044. //
  1045. #define COR_E_TARGETINVOCATION  EMAKEHR(0x1604L)
  1046.  
  1047. //
  1048. // MessageId: COR_E_TARGETREMOVED
  1049. //
  1050. // MessageText: The target method has been removed from the object 
  1051. //
  1052. #define COR_E_TARGETREMOVED  EMAKEHR(0x1605L) 
  1053.  
  1054.  
  1055. //
  1056. // MessageId: COR_E_ENDOFSTREAM
  1057. //
  1058. // MessageText: 
  1059. //
  1060. // Thrown when the End of file is reached
  1061. //
  1062. #define COR_E_ENDOFSTREAM  HRESULT_FROM_WIN32(ERROR_HANDLE_EOF) 
  1063.  
  1064.  
  1065. //
  1066. // MessageId: COR_E_FILENOTFOUND
  1067. //
  1068. // MessageText: 
  1069. //
  1070. // 
  1071. //
  1072. #define COR_E_FILENOTFOUND  HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND)
  1073.  
  1074. //
  1075. // MessageId: COR_E_IO
  1076. //
  1077. // MessageText: 
  1078. //
  1079. // Some sort of I/O error.
  1080. //
  1081. #define COR_E_IO  EMAKEHR(0x1620L) 
  1082.  
  1083.  
  1084. //
  1085. // MessageId: COR_E_DIRECTORYNOTFOUND
  1086. //
  1087. // MessageText: 
  1088. //
  1089. // The specified path couldn't be found.
  1090. //
  1091. #define COR_E_DIRECTORYNOTFOUND  HRESULT_FROM_WIN32(ERROR_PATH_NOT_FOUND)
  1092.  
  1093.  
  1094. //
  1095. // MessageId: COR_E_PATHTOOLONG
  1096. //
  1097. // MessageText: 
  1098. //
  1099. // The specified path was too long.
  1100. // 
  1101. // Note: there are two different possibilities for this HRESULT.  
  1102. // We could use the Win32 scode ERROR_FILENAME_EXCED_RANGE or
  1103. // COM's CO_E_PATHTOOLONG.  I think we'll go with the Win32 one.
  1104. #define COR_E_PATHTOOLONG  HRESULT_FROM_WIN32(ERROR_FILENAME_EXCED_RANGE)
  1105.  
  1106.  
  1107. //
  1108. // MessageId: COR_E_WEAKREFERENCE
  1109. //
  1110. // MessageText: 
  1111. //
  1112. // An invalid handle has been passed to a function expecting a valid WeakReference
  1113. //
  1114. #define COR_E_WEAKREFERENCE     EMAKEHR(0x1525L)
  1115.  
  1116. //
  1117. // MessageId: COR_E_INVALIDCOMOBJECT
  1118. //
  1119. // MessageText: 
  1120. //
  1121. // An invalid __ComObject has been used.
  1122. //
  1123. #define COR_E_INVALIDCOMOBJECT     EMAKEHR(0x1527L)
  1124.  
  1125. //
  1126. // MessageId: COR_E_INVALIDOLEVARIANTTYPE
  1127. //
  1128. // MessageText: 
  1129. //
  1130. // The type of an OLE variant that was passed into the runtime is invalid.
  1131. //
  1132. #define COR_E_INVALIDOLEVARIANTTYPE    EMAKEHR(0x1531L)
  1133.  
  1134. //
  1135. // MessageId: COR_E_COMEMULATE_ERROR
  1136. //
  1137. // MessageText: 
  1138. //
  1139. // An invalid COMEmulate attribute has been used.
  1140. //
  1141. #define COR_E_COMEMULATE_ERROR     EMAKEHR(0x1535L)
  1142.  
  1143. //
  1144. // MessageId: COR_E_SAFEARRAYTYPEMISMATCH
  1145. //
  1146. // MessageText: 
  1147. //
  1148. // A mismatch has occured between the runtime type of the array and the 
  1149. // sub type recorded in the metadata.
  1150. //
  1151. #define COR_E_SAFEARRAYTYPEMISMATCH    EMAKEHR(0x1533L)
  1152.  
  1153. //
  1154. // MessageId: COR_E_TARGETPARAMCOUNT
  1155. //
  1156. // MessageText: 
  1157. //
  1158. // There was a mismatch between number of arguments provided and the number expected
  1159. //
  1160. #define COR_E_TARGETPARAMCOUNT     DISP_E_BADPARAMCOUNT
  1161.  
  1162. //
  1163. // MessageId: COR_E_VTABLECALLSNOTSUPPORTED
  1164. //
  1165. // MessageText: 
  1166. //
  1167. // There was a mismatch between number of arguments provided and the number expected
  1168. //
  1169. #define COR_E_VTABLECALLSNOTSUPPORTED     EMAKEHR(0x1536L)
  1170.  
  1171.  
  1172. //**** Verifier Errors 1800 - 18FF
  1173. // See src/dlls/mscorrc/mscorrc.rc for a description of each error
  1174.  
  1175. #define VER_E_HRESULT           EMAKEHR(0x1801)
  1176. #define VER_E_OFFSET            EMAKEHR(0x1802)
  1177. #define VER_E_OPCODE            EMAKEHR(0x1803)
  1178. #define VER_E_OPERAND           EMAKEHR(0x1804)
  1179. #define VER_E_TOKEN             EMAKEHR(0x1805)
  1180. #define VER_E_EXCEPT            EMAKEHR(0x1806)
  1181. #define VER_E_STACK_SLOT        EMAKEHR(0x1807)
  1182. #define VER_E_LOC               EMAKEHR(0x1808)
  1183. #define VER_E_ARG               EMAKEHR(0x1809)
  1184. #define VER_E_FOUND             EMAKEHR(0x180A)
  1185. #define VER_E_EXPECTED          EMAKEHR(0x180B)
  1186.  
  1187. #define VER_E_UNKNOWN_OPCODE    EMAKEHR(0x1810)
  1188. #define VER_E_SIG_CALLCONV      EMAKEHR(0x1811)
  1189. #define VER_E_SIG_ELEMTYPE      EMAKEHR(0x1812)
  1190.  
  1191. #define VER_E_RET_SIG           EMAKEHR(0x1814)
  1192. #define VER_E_FIELD_SIG         EMAKEHR(0x1815)
  1193.  
  1194. #define VER_E_INTERNAL          EMAKEHR(0x1818)
  1195. #define VER_E_STACK_TOO_LARGE   EMAKEHR(0x1819)
  1196. #define VER_E_ARRAY_NAME_LONG   EMAKEHR(0x181A)
  1197.  
  1198. #define VER_E_FALLTHRU          EMAKEHR(0x1820)
  1199. #define VER_E_TRY_GTEQ_END      EMAKEHR(0x1821)
  1200. #define VER_E_TRYEND_GT_CS      EMAKEHR(0x1822)
  1201. #define VER_E_HND_GTEQ_END      EMAKEHR(0x1823)
  1202. #define VER_E_HNDEND_GT_CS      EMAKEHR(0x1824)
  1203. #define VER_E_FLT_GTEQ_CS       EMAKEHR(0x1825)
  1204. #define VER_E_TRY_START         EMAKEHR(0x1826)
  1205. #define VER_E_HND_START         EMAKEHR(0x1827)
  1206. #define VER_E_FLT_START         EMAKEHR(0x1828)
  1207. #define VER_E_TRY_OVERLAP       EMAKEHR(0x1829)
  1208. #define VER_E_TRY_EQ_HND_FIL    EMAKEHR(0x182A)
  1209. #define VER_E_TRY_SHARE_FIN_FAL EMAKEHR(0x182B)
  1210. #define VER_E_HND_OVERLAP       EMAKEHR(0x182C)
  1211. #define VER_E_HND_EQ            EMAKEHR(0x182D)
  1212. #define VER_E_FIL_OVERLAP       EMAKEHR(0x182E)
  1213. #define VER_E_FIL_EQ            EMAKEHR(0x182F)
  1214. #define VER_E_FIL_CONT_TRY      EMAKEHR(0x1830)
  1215. #define VER_E_FIL_CONT_HND      EMAKEHR(0x1831)
  1216. #define VER_E_FIL_CONT_FIL      EMAKEHR(0x1832)
  1217. #define VER_E_FIL_GTEQ_CS       EMAKEHR(0x1833)
  1218. #define VER_E_FIL_START         EMAKEHR(0x1834)
  1219. #define VER_E_FALLTHRU_EXCEP    EMAKEHR(0x1835)
  1220. #define VER_E_FALLTHRU_INTO_HND EMAKEHR(0x1836)
  1221. #define VER_E_FALLTHRU_INTO_FIL EMAKEHR(0x1837)
  1222. #define VER_E_LEAVE             EMAKEHR(0x1838)
  1223. #define VER_E_RETHROW           EMAKEHR(0x1839)
  1224. #define VER_E_ENDFINALLY        EMAKEHR(0x183A)
  1225. #define VER_E_ENDFILTER         EMAKEHR(0x183B)
  1226. #define VER_E_ENDFILTER_MISSING EMAKEHR(0x183C)
  1227. #define VER_E_BR_INTO_TRY        EMAKEHR(0x183D)
  1228. #define VER_E_BR_INTO_HND        EMAKEHR(0x183E)
  1229. #define VER_E_BR_INTO_FIL        EMAKEHR(0x183F)
  1230. #define VER_E_BR_OUTOF_TRY       EMAKEHR(0x1840)
  1231. #define VER_E_BR_OUTOF_HND       EMAKEHR(0x1841)
  1232. #define VER_E_BR_OUTOF_FIL       EMAKEHR(0x1842)
  1233. #define VER_E_BR_OUTOF_FIN       EMAKEHR(0x1843)
  1234. #define VER_E_RET_FROM_TRY       EMAKEHR(0x1844)
  1235. #define VER_E_RET_FROM_HND       EMAKEHR(0x1845)
  1236. #define VER_E_RET_FROM_FIL       EMAKEHR(0x1846)
  1237. #define VER_E_BAD_JMP_TARGET     EMAKEHR(0x1847)
  1238. #define VER_E_PATH_LOC            EMAKEHR(0x1848)
  1239. #define VER_E_PATH_THIS           EMAKEHR(0x1849)
  1240. #define VER_E_PATH_STACK          EMAKEHR(0x184A)
  1241. #define VER_E_PATH_STACK_DEPTH  EMAKEHR(0x184B)
  1242. #define VER_E_THIS                 EMAKEHR(0x184C)
  1243. #define VER_E_THIS_UNINIT_EXCEP EMAKEHR(0x184D)
  1244. #define VER_E_THIS_UNINIT_STORE EMAKEHR(0x184E)
  1245. #define VER_E_THIS_UNINIT_RET   EMAKEHR(0x184F)
  1246. #define VER_E_THIS_UNINIT_V_RET EMAKEHR(0x1850)
  1247. #define VER_E_THIS_UNINIT_BR     EMAKEHR(0x1851)
  1248. #define VER_E_THIS_BYREF_VAL     EMAKEHR(0x1852)
  1249. #define VER_E_STACK_NOT_EQ       EMAKEHR(0x1853)
  1250. #define VER_E_STACK_UNEXPECTED  EMAKEHR(0x1854)
  1251. #define VER_E_STACK_EXCEPTION   EMAKEHR(0x1855)
  1252. #define VER_E_STACK_OVERFLOW     EMAKEHR(0x1856)
  1253. #define VER_E_STACK_UNDERFLOW   EMAKEHR(0x1857)
  1254. #define VER_E_STACK_EMPTY        EMAKEHR(0x1858)
  1255. #define VER_E_STACK_UNINIT       EMAKEHR(0x1859)
  1256. #define VER_E_STACK_I_I4_I8      EMAKEHR(0x185A)
  1257. #define VER_E_STACK_R_R4_R8      EMAKEHR(0x185B)
  1258. #define VER_E_STACK_NO_R_R4_R8  EMAKEHR(0x185C)
  1259. #define VER_E_STACK_NUMERIC      EMAKEHR(0x185D)
  1260. #define VER_E_STACK_OBJREF       EMAKEHR(0x185E)
  1261. #define VER_E_STACK_P_OBJREF     EMAKEHR(0x185F)
  1262. #define VER_E_STACK_BYREF        EMAKEHR(0x1860)
  1263. #define VER_E_STACK_METHOD       EMAKEHR(0x1861)
  1264. #define VER_E_STACK_ARRAY_SD    EMAKEHR(0x1862)
  1265. #define VER_E_STACK_VALCLASS     EMAKEHR(0x1863)
  1266. #define VER_E_STACK_P_VALCLASS  EMAKEHR(0x1864)
  1267. #define VER_E_STACK_NO_VALCLASS EMAKEHR(0x1865)
  1268. #define VER_E_LOC_DEAD            EMAKEHR(0x1866)
  1269. #define VER_E_LOC_NUM             EMAKEHR(0x1867)
  1270. #define VER_E_ARG_NUM             EMAKEHR(0x1868)
  1271. #define VER_E_TOKEN_RESOLVE      EMAKEHR(0x1869)
  1272. #define VER_E_TOKEN_TYPE          EMAKEHR(0x186A)
  1273. #define VER_E_TOKEN_TYPE_MEMBER EMAKEHR(0x186B)
  1274. #define VER_E_TOKEN_TYPE_FIELD  EMAKEHR(0x186C)
  1275. #define VER_E_TOKEN_TYPE_SIG     EMAKEHR(0x186D)
  1276. #define VER_E_UNVERIFIABLE       EMAKEHR(0x186E)
  1277. #define VER_E_LDSTR_OPERAND      EMAKEHR(0x186F)
  1278. #define VER_E_RET_BYREF           EMAKEHR(0x1870)
  1279. #define VER_E_RET_VOID            EMAKEHR(0x1871)
  1280. #define VER_E_RET_MISSING        EMAKEHR(0x1872)
  1281. #define VER_E_RET_EMPTY           EMAKEHR(0x1873)
  1282. #define VER_E_RET_UNINIT          EMAKEHR(0x1874)
  1283. #define VER_E_ARRAY_ACCESS       EMAKEHR(0x1875)
  1284. #define VER_E_ARRAY_V_STORE      EMAKEHR(0x1876)
  1285. #define VER_E_ARRAY_SD            EMAKEHR(0x1877)
  1286. #define VER_E_ARRAY_SD_PTR       EMAKEHR(0x1878)
  1287. #define VER_E_ARRAY_FIELD        EMAKEHR(0x1879)
  1288. #define VER_E_ARGLIST             EMAKEHR(0x187A)
  1289. #define VER_E_VALCLASS            EMAKEHR(0x187B)
  1290. #define VER_E_METHOD_ACCESS      EMAKEHR(0x187C)
  1291. #define VER_E_FIELD_ACCESS       EMAKEHR(0x187D)
  1292. #define VER_E_DEAD                 EMAKEHR(0x187E)
  1293. #define VER_E_FIELD_STATIC       EMAKEHR(0x187F)
  1294. #define VER_E_FIELD_NO_STATIC   EMAKEHR(0x1880)
  1295. #define VER_E_ADDR                 EMAKEHR(0x1881)
  1296. #define VER_E_ADDR_BYREF          EMAKEHR(0x1882)
  1297. #define VER_E_ADDR_LITERAL       EMAKEHR(0x1883)
  1298. #define VER_E_INITONLY            EMAKEHR(0x1884)
  1299. #define VER_E_THROW                EMAKEHR(0x1885)
  1300. #define VER_E_CALLVIRT_VALCLASS    EMAKEHR(0x1886)
  1301. #define VER_E_CALL_SIG            EMAKEHR(0x1887)
  1302. #define VER_E_CALL_STATIC        EMAKEHR(0x1888)
  1303. #define VER_E_CTOR                 EMAKEHR(0x1889)
  1304. #define VER_E_CTOR_VIRT           EMAKEHR(0x188A)
  1305. #define VER_E_CTOR_OR_SUPER      EMAKEHR(0x188B)
  1306. #define VER_E_CTOR_MUL_INIT      EMAKEHR(0x188C)
  1307. #define VER_E_SIG               EMAKEHR(0x188D)
  1308. #define VER_E_SIG_ARRAY         EMAKEHR(0x188E)
  1309. #define VER_E_SIG_ARRAY_PTR     EMAKEHR(0x188F)
  1310. #define VER_E_SIG_ARRAY_BYREF   EMAKEHR(0x1890)
  1311. #define VER_E_SIG_ELEM_PTR      EMAKEHR(0x1891)
  1312. #define VER_E_SIG_VARARG        EMAKEHR(0x1892)
  1313. #define VER_E_SIG_VOID          EMAKEHR(0x1893)
  1314. #define VER_E_SIG_BYREF_BYREF   EMAKEHR(0x1894)
  1315. #define VER_E_CODE_SIZE_ZERO    EMAKEHR(0x1896)
  1316. #define VER_E_BAD_VARARG        EMAKEHR(0x1897)
  1317. #define VER_E_TAIL_CALL         EMAKEHR(0x1898)
  1318. #define VER_E_TAIL_BYREF        EMAKEHR(0x1899)
  1319. #define VER_E_TAIL_RET          EMAKEHR(0x189A)
  1320. #define VER_E_TAIL_RET_VOID     EMAKEHR(0x189B)
  1321. #define VER_E_TAIL_RET_TYPE     EMAKEHR(0x189C)
  1322. #define VER_E_TAIL_STACK_EMPTY  EMAKEHR(0x189D)
  1323. #define VER_E_METHOD_END        EMAKEHR(0x189E)
  1324. #define VER_E_BAD_BRANCH        EMAKEHR(0x189F)
  1325. #define VER_E_FIN_OVERLAP       EMAKEHR(0x18A0)
  1326. #define VER_E_LEXICAL_NESTING   EMAKEHR(0x18A1)
  1327. #define VER_E_VOLATILE          EMAKEHR(0x18A2)
  1328. #define VER_E_UNALIGNED         EMAKEHR(0x18A3)
  1329. #define VER_E_INNERMOST_FIRST   EMAKEHR(0x18A4)
  1330. #define VER_E_CALLI_VIRTUAL     EMAKEHR(0x18A5)
  1331. #define VER_E_CALL_ABSTRACT     EMAKEHR(0x18A6)
  1332. #define VER_E_GLOBAL_METHOD     EMAKEHR(0x18A7)
  1333.  
  1334. #define VER_E_BAD_PE            EMAKEHR(0x18F0)
  1335.  
  1336. #endif // __COMPLUS_RUNTIME_HRESULTS__
  1337.