Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Przywraca wszystkie wystąpienia określonych funkcji do ich oryginalnych wersji.
Składnia
HRESULT RequestRevert (
[in] ULONG cFunctions,
[in, size_is(cFunctions)] ModuleID moduleIds[],
[in, size_is(cFunctions)] mdMethodDef methodIds[],
[out, size_is(cFunctions)] HRESULT status[]);
Parametry
cFunctions
[in] Liczba funkcji do odzyskania.
moduleIds
[in] Określa moduleId część par (module, methodDef), które identyfikują funkcje, które mają zostać przywrócone.
methodIds
[in] Określa methodId część par (module, methodDef), które identyfikują funkcje, które mają zostać przywrócone.
status
[out] Tablica hrESULTs wymieniona w sekcji "HrESULTs stanu" w dalszej części tego tematu. Każdy HRESULT wskazuje powodzenie lub niepowodzenie próby odwrócenia każdej funkcji określonej w tablicach równoległych moduleIds i methodIds.
Wartość zwracana
Ta metoda zwraca następujące specyficzne wartości HRESULTs, a także błędy HRESULT wskazujące niepowodzenie metody.
| HRESULT | Opis |
|---|---|
| S_OK | Podjęto próbę odzyskania wszystkich żądań; jednak zwracana tablica stanu musi zostać sprawdzona, aby określić, które funkcje zostały pomyślnie przywrócone. |
| CORPROF_E_CALLBACK4_REQUIRED | Profiler musi zaimplementować interfejs ICorProfilerCallback4 , aby to wywołanie było obsługiwane. |
| CORPROF_E_REJIT_NOT_ENABLED | Ponowna kompilacja trybu JIT nie została włączona. Aby ustawić flagęCOR_PRF_ENABLE_REJIT, należy włączyć ponowną kompilację trybu JIT podczas inicjowania przy użyciu metody ICorProfilerInfo::SetEventMask. |
| E_INVALIDARG |
cFunctions ma wartość 0 lub moduleIdsmethodIds ma NULLwartość . |
| E_OUTOFMEMORY | ClR nie może ukończyć żądania, ponieważ zabrakło pamięci. |
Stan HRESULTS
| Tablica stanu HRESULT | Opis |
|---|---|
| S_OK | Odpowiednia funkcja została pomyślnie przywrócona. |
| E_INVALIDARG | Parametr moduleID or methodDef to NULL. |
| CORPROF_E_DATAINCOMPLETE | Moduł nie jest jeszcze w pełni załadowany lub jest w trakcie zwalniania. |
| CORPROF_E_MODULE_IS_DYNAMIC | Określony moduł został wygenerowany dynamicznie (na przykład przez Reflection.Emitelement ). W związku z tym ta metoda nie jest obsługiwana. |
| CORPROF_E_ACTIVE_REJIT_REQUEST_NOT_FOUND | ClR nie może przywrócić określonej funkcji, ponieważ nie znaleziono odpowiedniego aktywnego żądania ponownej kompilacji. Ponowna kompilacja nigdy nie została zażądana lub funkcja została już przywrócona. |
| Inne | System operacyjny zwrócił błąd poza kontrolą środowiska CLR. Na przykład jeśli wywołanie systemu w celu zmiany ochrony dostępu do strony pamięci zakończy się niepowodzeniem, zostanie wyświetlony błąd systemu operacyjnego. |
Uwagi
Przy następnym wywołaniu dowolnego z przywróconych wystąpień funkcji zostaną uruchomione oryginalne wersje funkcji. Jeśli funkcja jest już uruchomiona, zakończy wykonywanie uruchomionej wersji.
Wymagania
Platformy: Zobacz Wymagania systemowe.
Nagłówka: CorProf.idl, CorProf.h
Biblioteki: CorGuids.lib
wersje .NET Framework: dostępne od wersji 4.5