Megosztás a következőn keresztül:


ICLRDebugging::OpenVirtualProcess metódus

Lekéri a folyamatba betöltött közös nyelvi futtatókörnyezeti (CLR) modulnak megfelelő ICorDebugProcess felületet.

Szemantika

HRESULT OpenVirtualProcess(
    [in] ULONG64 moduleBaseAddress,
    [in] IUnknown * pDataTarget,
    [in] ICLRDebuggingLibraryProvider * pLibraryProvider,
    [in] CLR_DEBUGGING_VERSION * pMaxDebuggerSupportedVersion,
    [in] REFIID riidProcess,
    [out, iid_is(riidProcess)] IUnknown ** ppProcess,
    [in, out] CLR_DEBUGGING_VERSION * pVersion,
    [out] CLR_DEBUGGING_PROCESS_FLAGS * pdwFlags);

Paraméterek

moduleBaseAddress [in] Egy modul alapcíme a célfolyamatban. COR_E_NOT_CLR akkor lesz visszaadva, ha a megadott modul nem CLR-modul.

pDataTarget [in] Adatcél absztrakciója, amely lehetővé teszi a felügyelt hibakereső számára a folyamatállapot vizsgálatát. A hibakeresőnek implementálnia kell az ICorDebugDataTarget felületet. Az ICLRDebuggingLibraryProvider felületet olyan helyzetek támogatásához kell implementálnia, ahol a hibakeresés alatt álló CLR nincs helyileg telepítve a számítógépen.

pLibraryProvider [in] Erőforrástár-szolgáltatói visszahívási felület, amely lehetővé teszi a verzióspecifikus hibakeresési kódtárak igény szerinti elhelyezését és betöltését. Ez a paraméter csak akkor szükséges, ha ppProcesspFlags nem null.

pMaxDebuggerSupportedVersion [in] A CLR legmagasabb verziója, amelyet ez a hibakereső képes hibakeresésre. A hibakereső által támogatott legújabb CLR-verzió fő-, alverzió- és buildverzióit meg kell adnia, és a verziószámot 65535-re kell állítania a jövőbeli helyi CLR-karbantartási kiadások fogadására.

riidProcess [in] A lekérni kívánt ICorDebugProcess felület azonosítója. Jelenleg az egyetlen elfogadott érték az IID_CORDEBUGPROCESS3, IID_CORDEBUGPROCESS2és IID_CORDEBUGPROCESS.

ppProcess [kifelé] A COM-felületre mutató mutató, amelyet riidProcessa következő azonosít: .

pVersion [be, ki] A CLR verziója. Bemenet esetén ez az érték lehet null. Egy CLR_DEBUGGING_VERSION szerkezetre is mutathat, ebben az esetben a struktúra mezőjét wStructVersion 0 -ra (nulla) kell inicializálni.

Kimenet esetén a visszaadott CLR_DEBUGGING_VERSION struktúra ki lesz töltve a CLR verzióadataival.

pdwFlags [kifelé] Információs jelzők a megadott futtatókörnyezetről. A jelölők leírását lásd a CLR_DEBUGGING_PROCESS_FLAGS.

Visszaadott érték

Ez a metódus a következő specifikus HRESULT-eket, valamint a metódushibát jelző HRESULT-hibákat adja vissza.

HRESULT Description
S_OK A metódus sikeresen befejeződött.
E_POINTER pDataTarget az null.
CORDBG_E_LIBRARY_PROVIDER_ERROR Az ICLRDebuggingLibraryProvider visszahívás hibát ad vissza, vagy nem ad meg érvényes leírót.
CORDBG_E_MISSING_DATA_TARGET_INTERFACE pDataTarget nem implementálja a futtatókörnyezet ezen verziójához szükséges adatcél-interfészeket.
CORDBG_E_NOT_CLR A megadott modul nem CLR-modul. Ezt a HRESULT-t akkor is visszaadja a rendszer, ha egy CLR-modul nem észlelhető, mert a memória sérült, a modul nem érhető el, vagy a CLR-verzió későbbi, mint a shim verziója.
CORDBG_E_UNSUPPORTED_DEBUGGING_MODEL Ez a futtatókörnyezeti verzió nem támogatja ezt a hibakeresési modellt. A hibakeresési modellt jelenleg nem támogatják a CLR-verziók a .NET-keretrendszer 4-et megelőzően. A pwszVersion kimeneti paraméter a hiba után is a megfelelő értékre van állítva.
CORDBG_E_UNSUPPORTED_FORWARD_COMPAT A CLR verziója nagyobb, mint a hibakereső által támogatott verzió. A pwszVersion kimeneti paraméter a hiba után is a megfelelő értékre van állítva.
E_NO_INTERFACE A riidProcess felület nem érhető el.
CORDBG_E_UNSUPPORTED_VERSION_STRUCT A CLR_DEBUGGING_VERSION struktúra nem rendelkezik felismert értékkel a következőhöz wStructVersion: . Jelenleg az egyetlen elfogadott érték a 0.

Exceptions

Megjegyzések

Requirements

Platformok: Lásd a rendszerkövetelményeket.

Fejléc: CorDebug.idl, CorDebug.h

Könyvtár: CorGuids.lib

.NET-keretrendszerverziók: 4 óta elérhető

.NET-verziók: A .NET Core 2.1 óta érhető el

Lásd még