Author: cwittich Date: Sun Sep 7 06:10:58 2008 New Revision: 36024
URL: http://svn.reactos.org/svn/reactos?rev=36024&view=rev Log: sync mscoree headers with wine
Added: trunk/reactos/include/psdk/corerror.h (with props) trunk/reactos/include/psdk/corhdr.h (with props) Modified: trunk/reactos/include/psdk/mscoree.idl
Added: trunk/reactos/include/psdk/corerror.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/corerror.h?rev... ============================================================================== --- trunk/reactos/include/psdk/corerror.h (added) +++ trunk/reactos/include/psdk/corerror.h [iso-8859-1] Sun Sep 7 06:10:58 2008 @@ -1,0 +1,124 @@ +/* + * Copyright 2008 James Hawkins + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#ifndef __WINE_CORERROR_H +#define __WINE_CORERROR_H + +#include <winerror.h> + +#ifndef FACILITY_URT +#define FACILITY_URT 0x13 +#endif + +#ifndef EMAKEHR +#define SMAKEHR(val) MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_URT, val) +#define EMAKEHR(val) MAKE_HRESULT(SEVERITY_ERROR, FACILITY_URT, val) +#endif + +#define COR_E_ARGUMENT E_INVALIDARG +#define COR_E_INVALIDCAST E_NOINTERFACE +#define COR_E_NULLREFERENCE E_POINTER +#define COR_E_OUTOFMEMORY E_OUTOFMEMORY +#define COR_E_UNAUTHORIZEDACCESS E_ACCESSDENIED + +#define COR_E_ARITHMETIC HRESULT_FROM_WIN32(ERROR_ARITHMETIC_OVERFLOW) +#define COR_E_STACKOVERFLOW HRESULT_FROM_WIN32(ERROR_STACK_OVERFLOW) +#define COR_E_ENDOFSTREAM HRESULT_FROM_WIN32(ERROR_HANDLE_EOF) +#define COR_E_FILENOTFOUND HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND) +#define COR_E_BAD_PATHNAME HRESULT_FROM_WIN32(ERROR_BAD_PATHNAME) +#define COR_E_DIRECTORYNOTFOUND HRESULT_FROM_WIN32(ERROR_PATH_NOT_FOUND) +#define COR_E_PATHTOOLONG HRESULT_FROM_WIN32(ERROR_FILENAME_EXCED_RANGE) + +#define COR_E_AMBIGUOUSMATCH _HRESULT_TYPEDEF_(0x8000211DL) +#define COR_E_TARGETPARAMCOUNT _HRESULT_TYPEDEF_(0x8002000EL) +#define COR_E_DIVIDEBYZERO _HRESULT_TYPEDEF_(0x80020012L) +#define COR_E_BADIMAGEFORMAT _HRESULT_TYPEDEF_(0x8007000BL) + +#define COR_E_ASSEMBLYEXPECTED EMAKEHR(0x1018L) +#define COR_E_TYPEUNLOADED EMAKEHR(0x1013L) +#define COR_E_EXCEPTION EMAKEHR(0x1500L) +#define COR_E_SYSTEM EMAKEHR(0x1501L) +#define COR_E_ARGUMENTOUTOFRANGE EMAKEHR(0x1502L) +#define COR_E_ARRAYTYPEMISMATCH EMAKEHR(0x1503L) +#define COR_E_CONTEXTMARSHAL EMAKEHR(0x1504L) +#define COR_E_TIMEOUT EMAKEHR(0x1505L) +#define COR_E_EXECUTIONENGINE EMAKEHR(0x1506L) +#define COR_E_FIELDACCESS EMAKEHR(0x1507L) +#define COR_E_INDEXOUTOFRANGE EMAKEHR(0x1508L) +#define COR_E_INVALIDOPERATION EMAKEHR(0x1509L) +#define COR_E_SECURITY EMAKEHR(0x150AL) +#define COR_E_REMOTING EMAKEHR(0x150BL) +#define COR_E_SERIALIZATION EMAKEHR(0x150CL) +#define COR_E_VERIFICATION EMAKEHR(0x150DL) +#define COR_E_SERVER EMAKEHR(0x150EL) +#define COR_E_SERVICEDCOMPONENT EMAKEHR(0x150FL) +#define COR_E_METHODACCESS EMAKEHR(0x1510L) +#define COR_E_MISSINGFIELD EMAKEHR(0x1511L) +#define COR_E_MISSINGMEMBER EMAKEHR(0x1512L) +#define COR_E_MISSINGMETHOD EMAKEHR(0x1513L) +#define COR_E_MULTICASTNOTSUPPORTED EMAKEHR(0x1514L) +#define COR_E_NOTSUPPORTED EMAKEHR(0x1515L) +#define COR_E_OVERFLOW EMAKEHR(0x1516L) +#define COR_E_RANK EMAKEHR(0x1517L) +#define COR_E_SYNCHRONIZATIONLOCK EMAKEHR(0x1518L) +#define COR_E_THREADINTERRUPTED EMAKEHR(0x1519L) +#define COR_E_MEMBERACCESS EMAKEHR(0x151AL) +#define COR_E_THREADSTATE EMAKEHR(0x1520L) +#define COR_E_THREADSTOP EMAKEHR(0x1521L) +#define COR_E_TYPELOAD EMAKEHR(0x1522L) +#define COR_E_ENTRYPOINTNOTFOUND EMAKEHR(0x1523L) +#define COR_E_DLLNOTFOUND EMAKEHR(0x1524L) +#define COR_E_THREADSTART EMAKEHR(0x1525L) +#define COR_E_INVALIDCOMOBJECT EMAKEHR(0x1527L) +#define COR_E_NOTFINITENUMBER EMAKEHR(0x1528L) +#define COR_E_DUPLICATEWAITOBJECT EMAKEHR(0x1529L) +#define COR_E_SEMAPHOREFULL EMAKEHR(0x152BL) +#define COR_E_WAITHANDLECANNOTBEOPENED EMAKEHR(0x152CL) +#define COR_E_ABANDONEDMUTEX EMAKEHR(0x152DL) +#define COR_E_INVALIDOLEVARIANTTYPE EMAKEHR(0x1531L) +#define COR_E_MISSINGMANIFESTRESOURCE EMAKEHR(0x1532L) +#define COR_E_SAFEARRAYTYPEMISMATCH EMAKEHR(0x1533L) +#define COR_E_TYPEINITIALIZATION EMAKEHR(0x1534L) +#define COR_E_MARSHALDIRECTIVE EMAKEHR(0x1535L) +#define COR_E_MISSINGSATELLITEASSEMBLY EMAKEHR(0x1536L) +#define COR_E_FORMAT EMAKEHR(0x1537L) +#define COR_E_SAFEARRAYRANKMISMATCH EMAKEHR(0x1538L) +#define COR_E_PLATFORMNOTSUPPORTED EMAKEHR(0x1539L) +#define COR_E_INVALIDPROGRAM EMAKEHR(0x153AL) +#define COR_E_OPERATIONCANCELED EMAKEHR(0x153BL) +#define COR_E_INSUFFICIENTMEMORY EMAKEHR(0x153DL) +#define COR_E_RUNTIMEWRAPPED EMAKEHR(0x153EL) +#define COR_E_DEVICESNOTSUPPORTED EMAKEHR(0x1540L) +#define COR_E_DATAMISALIGNED EMAKEHR(0x1541L) +#define COR_E_KEYNOTFOUND EMAKEHR(0x1577L) +#define COR_E_APPLICATION EMAKEHR(0x1600L) +#define COR_E_INVALIDFILTERCRITERIA EMAKEHR(0x1601L) +#define COR_E_REFLECTIONTYPELOAD EMAKEHR(0x1602L) +#define COR_E_TARGET EMAKEHR(0x1603L) +#define COR_E_TARGETINVOCATION EMAKEHR(0x1604L) +#define COR_E_CUSTOMATTRIBUTEFORMAT EMAKEHR(0x1605L) +#define COR_E_IO EMAKEHR(0x1620L) +#define COR_E_FILELOAD EMAKEHR(0x1621L) +#define COR_E_OBJECTDISPOSED EMAKEHR(0x1622L) +#define COR_E_FAILFAST EMAKEHR(0x1623L) +#define COR_E_HOSTPROTECTION EMAKEHR(0x1640L) +#define COR_E_ILLEGAL_REENTRANCY EMAKEHR(0x1641L) + +#define FUSION_E_INVALID_NAME EMAKEHR(0x1047) + +#endif /* __WINE_CORERROR_H */
Propchange: trunk/reactos/include/psdk/corerror.h ------------------------------------------------------------------------------ svn:eol-style = native
Added: trunk/reactos/include/psdk/corhdr.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/corhdr.h?rev=3... ============================================================================== --- trunk/reactos/include/psdk/corhdr.h (added) +++ trunk/reactos/include/psdk/corhdr.h [iso-8859-1] Sun Sep 7 06:10:58 2008 @@ -1,0 +1,58 @@ +/* + * Copyright 2008 James Hawkins + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#ifndef __WINE_CORHDR_H +#define __WINE_CORHDR_H + +typedef enum CorTokenType +{ + mdtModule = 0x00000000, + mdtTypeRef = 0x01000000, + mdtTypeDef = 0x02000000, + mdtFieldDef = 0x04000000, + mdtMethodDef = 0x06000000, + mdtParamDef = 0x08000000, + mdtInterfaceImpl = 0x09000000, + mdtMemberRef = 0x0a000000, + mdtCustomAttribute = 0x0c000000, + mdtPermission = 0x0e000000, + mdtSignature = 0x11000000, + mdtEvent = 0x14000000, + mdtProperty = 0x17000000, + mdtModuleRef = 0x1a000000, + mdtTypeSpec = 0x1b000000, + mdtAssembly = 0x20000000, + mdtAssemblyRef = 0x23000000, + mdtFile = 0x26000000, + mdtExportedType = 0x27000000, + mdtManifestResource = 0x28000000, + mdtGenericParam = 0x2a000000, + mdtMethodSpec = 0x2b000000, + mdtGenericParamConstraint = 0x2c000000, + mdtString = 0x70000000, + mdtName = 0x71000000, + mdtBaseType = 0x72000000, +} CorTokenType; + +#define RidToToken(rid,tktype) ((rid) |= (tktype)) +#define TokenFromRid(rid,tktype) ((rid) | (tktype)) +#define RidFromToken(tk) ((RID)((tk) & 0x00ffffff)) +#define TypeFromToken(tk) ((ULONG32)((tk) & 0xff000000)) +#define IsNilToken(tk) ((RidFromToken(tk)) == 0) + +#endif /* __WINE_CORHDR_H */
Propchange: trunk/reactos/include/psdk/corhdr.h ------------------------------------------------------------------------------ svn:eol-style = native
Modified: trunk/reactos/include/psdk/mscoree.idl URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/mscoree.idl?re... ============================================================================== --- trunk/reactos/include/psdk/mscoree.idl [iso-8859-1] (original) +++ trunk/reactos/include/psdk/mscoree.idl [iso-8859-1] Sun Sep 7 06:10:58 2008 @@ -1,5 +1,6 @@ /* * Copyright (C) 2007 Francois Gouget + * Copyright (C) 2008 Alistair Leslie-Hughes * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -16,6 +17,7 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
+import "unknwn.idl"; cpp_quote("/* FIXME: #include <gcghost.h> */") cpp_quote("/* FIXME: #include <ivalidator.h> */")
@@ -25,3 +27,140 @@ cpp_quote("HRESULT WINAPI GetCORVersion(LPWSTR,DWORD,DWORD*);") cpp_quote("HRESULT WINAPI GetRequestedRuntimeInfo(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,DWORD,LPWSTR,DWORD,DWORD*,LPWSTR,DWORD,DWORD*);") cpp_quote("HRESULT WINAPI LoadLibraryShim(LPCWSTR,LPCWSTR,LPVOID,HMODULE*);") + +typedef void* HDOMAINENUM; + +[ + uuid(F31D1788-C397-4725-87A5-6AF3472C2791), + version(1.0), + object, + local +] +interface IGCThreadControl : IUnknown +{ + HRESULT ThreadIsBlockingForSuspension(); + + HRESULT SuspensionStarting(); + + HRESULT SuspensionEnding(DWORD generation); +} + +[ + uuid(5513D564-8374-4cb9-AED9-0083F4160A1D), + version(1.1), + local, + object +] +interface IGCHostControl : IUnknown +{ + HRESULT RequestVirtualMemLimit([in] SIZE_T nMaxVirtualMemMB, + [in, out] SIZE_T* nNewMaxVirtualMemMB); +} + +[ + uuid(23D86786-0BB5-4774-8FB5-E3522ADD6246), + version(1.0), + local, + object +] +interface IDebuggerThreadControl : IUnknown +{ + HRESULT ThreadIsBlockingForDebugger(); + + HRESULT ReleaseAllRuntimeThreads(); + + HRESULT StartBlockingForDebugger(DWORD dwUnused); +} + +[ + uuid(5C2B07A5-1E98-11d3-872F-00C04F79ED0D), + version(1.0), + local, + object +] +interface ICorConfiguration : IUnknown +{ + HRESULT SetGCThreadControl([in] IGCThreadControl* GCThreadControl); + + HRESULT SetGCHostControl([in] IGCHostControl* GCHostControl); + + HRESULT SetDebuggerThreadControl([in] IDebuggerThreadControl* debuggerThreadControl); + + HRESULT AddDebuggerSpecialThread([in] DWORD specialThreadId); +} + +[ + uuid(9065597E-D1A1-4fb2-B6BA-7E1FCE230F61), + version(1.0), + local +] +interface ICLRControl : IUnknown +{ + HRESULT GetCLRManager([in] REFIID riid, [out] void **ppObject); + + HRESULT SetAppDomainManagerType([in] LPCWSTR appDomainManagerAssembly, + [in] LPCWSTR appDomainManagerType); +} + +[ + uuid(02CA073C-7079-4860-880A-C2F7A449C991), + version(1.0), + local +] +interface IHostControl : IUnknown +{ + HRESULT GetHostManager( [in] REFIID riid, [out] void **ppObject); + + HRESULT SetAppDomainManager([in] DWORD appDomainID, + [in] IUnknown* appDomainManager); +} + +[ + uuid(CB2F6722-AB3A-11d2-9C40-00C04FA30A3E), + version(1.0), + local, + object +] +interface ICorRuntimeHost : IUnknown +{ + HRESULT CreateLogicalThreadState(); + HRESULT DeleteLogicalThreadState(); + HRESULT SwitchInLogicalThreadState([in] DWORD *fiberCookie); + + HRESULT SwitchOutLogicalThreadState([out] DWORD **fiberCookie); + + HRESULT LocksHeldByLogicalThread( [out] DWORD *pCount ); + + HRESULT MapFile([in] HANDLE hFile, [out] HMODULE* mapAddress); + + HRESULT GetConfiguration([out] ICorConfiguration** pConfiguration); + + HRESULT Start(); + + HRESULT Stop(); + + HRESULT CreateDomain([in] LPCWSTR friendlyName, + [in] IUnknown* identityArray, + [out] IUnknown** appDomain); + + HRESULT GetDefaultDomain([out] IUnknown** pAppDomain); + + HRESULT EnumDomains([out] HDOMAINENUM *hEnum); + + HRESULT NextDomain([in] HDOMAINENUM hEnum, [out] IUnknown** appDomain); + + HRESULT CloseEnum([in] HDOMAINENUM hEnum); + + HRESULT CreateDomainEx([in] LPCWSTR friendlyName, + [in] IUnknown* setup, + [in] IUnknown* evidence, + [out] IUnknown** appDomain); + + HRESULT CreateDomainSetup([out] IUnknown** appDomainSetup); + + HRESULT CreateEvidence([out] IUnknown** evidence); + + HRESULT UnloadDomain([in] IUnknown* appDomain); + + HRESULT CurrentDomain([out] IUnknown** appDomain); +};