Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Hämtar ICorDebugProcess-gränssnittet som motsvarar en CLR-modul (Common Language Runtime) som läses in i processen.
Syntax
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);
Parameterar
moduleBaseAddress [i] Basadressen för en modul i målprocessen.
COR_E_NOT_CLR returneras om den angivna modulen inte är en CLR-modul.
pDataTarget [i] En abstraktion av datamål som gör att det hanterade felsökningsprogrammet kan inspektera processtillståndet. Felsökningsprogrammet måste implementera gränssnittet ICorDebugDataTarget . Du bör implementera gränssnittet ICLRDebuggingLibraryProvider för att stödja scenarier där DEN CLR som debuggas inte är installerad lokalt på datorn.
pLibraryProvider [i] Ett gränssnitt för återanrop till biblioteksprovidern som gör att versionsspecifika felsökningsbibliotek kan lokaliseras och läsas in på begäran. Den här parametern krävs endast om ppProcess eller pFlags inte nullär .
pMaxDebuggerSupportedVersion [i] Den högsta versionen av CLR som det här felsökningsprogrammet kan felsöka. Du bör ange huvud-, del- och versionsversionerna från den senaste CLR-versionen som det här felsökningsprogrammet stöder och ange revisionsnumret till 65535 för att hantera framtida CLR-serviceversioner på plats.
riidProcess [i] ID:t för det ICorDebugProcess-gränssnitt som ska hämtas. För närvarande är IID_CORDEBUGPROCESS3de enda godkända värdena , IID_CORDEBUGPROCESS2och IID_CORDEBUGPROCESS.
ppProcess [ut] En pekare till COM-gränssnittet som identifieras av riidProcess.
pVersion [in, ut] Versionen av CLR. Vid indata kan det här värdet vara null. Det kan också peka på en CLR_DEBUGGING_VERSION struktur, i vilket fall strukturens fält måste initieras wStructVersion till 0 (noll).
Vid utdata fylls den returnerade CLR_DEBUGGING_VERSION strukturen i med versionsinformationen för CLR.
pdwFlags [ut] Informationsflaggor om den angivna körningen. En beskrivning av flaggorna finns i CLR_DEBUGGING_PROCESS_FLAGS.
Returvärde
Den här metoden returnerar följande specifika HRESULT-fel samt HRESULT-fel som indikerar metodfel.
| HRESULT | Description |
|---|---|
| S_OK | Metoden har slutförts. |
| E_POINTER |
pDataTarget är null. |
| CORDBG_E_LIBRARY_PROVIDER_ERROR | Återanropet ICLRDebuggingLibraryProvider returnerar ett fel eller ger inte ett giltigt handtag. |
| CORDBG_E_MISSING_DATA_TARGET_INTERFACE |
pDataTarget implementerar inte de nödvändiga datamålgränssnitten för den här versionen av körningen. |
| CORDBG_E_NOT_CLR | Den angivna modulen är inte en CLR-modul. Denna HRESULT returneras också när en CLR-modul inte kan identifieras eftersom minnet har skadats, modulen inte är tillgänglig eller CLR-versionen är senare än shim-versionen. |
| CORDBG_E_UNSUPPORTED_DEBUGGING_MODEL | Den här körningsversionen stöder inte den här felsökningsmodellen. För närvarande stöds inte felsökningsmodellen av CLR-versioner före .NET Framework 4. Utdataparametern pwszVersion är fortfarande inställd på rätt värde efter det här felet. |
| CORDBG_E_UNSUPPORTED_FORWARD_COMPAT | Versionen av CLR är större än den version som det här felsökningsprogrammet påstår sig ha stöd för. Utdataparametern pwszVersion är fortfarande inställd på rätt värde efter det här felet. |
| E_NO_INTERFACE | Gränssnittet riidProcess är inte tillgängligt. |
| CORDBG_E_UNSUPPORTED_VERSION_STRUCT | Strukturen CLR_DEBUGGING_VERSION har inget igenkänt värde för wStructVersion. Det enda godkända värdet för tillfället är 0. |
Exceptions
Anmärkningar
Kravspecifikation
Plattformar: Se Systemkrav.
Rubrik: CorDebug.idl, CorDebug.h
Bibliotek: CorGuids.lib
.NET Framework-versioner: Tillgänglig sedan 4
.NET-versioner: Tillgänglig sedan .NET Core 2.1