Freigeben über


IHostMemoryManager::VirtualQuery-Methode

Dient als logischer Wrapper für die entsprechende Win32-Funktion Die Win32-Implementierung VirtualQuery ruft Informationen zu einem Seitenbereich im virtuellen Adressbereich des aufrufenden Prozesses ab.

Syntax

HRESULT VirtualQuery (  
    [in]  void*    lpAddress,  
    [out] void*    lpBuffer,  
    [in]  SIZE_T   dwLength,  
    [out] SIZE_T*  pResult  
);  

Parameter

lpAddress
[in] Ein Zeiger auf die Adresse im virtuellen Speicher, die abgefragt werden soll

lpBuffer
[out] Ein Zeiger auf eine Struktur, die Informationen zum angegebenen Speicherbereich enthält

dwLength
[in] Die Größe des Puffers in Bytes, auf den lpBuffer verweist

pResult
[out] Ein Zeiger auf die Anzahl von Bytes, die vom Informationspuffer zurückgegeben werden

Rückgabewert

HRESULT BESCHREIBUNG
S_OK VirtualQuery wurde erfolgreich zurückgegeben.
HOST_E_CLRNOTAVAILABLE Die Common Language Runtime (CLR) wurde nicht in einen Prozess geladen, oder die CLR befindet sich in einem Zustand, in dem sie keinen verwalteten Code ausführen oder den Aufruf nicht erfolgreich verarbeiten kann.
HOST_E_TIMEOUT Timeout des Aufrufs.
HOST_E_NOT_OWNER Der Aufrufer besitzt die Sperre nicht.
HOST_E_ABANDONED Ein Ereignis wurde abgebrochen, während ein blockierter Thread oder eine blockierte Fiber darauf gewartet hat.
E_FAIL Es ist ein unbekannter katastrophaler Fehler aufgetreten. Wenn eine Methode E_FAIL zurückgibt, kann die CLR nicht mehr innerhalb des Prozesses verwendet werden. Nachfolgende Aufrufe von Hostingmethoden geben HOST_E_CLRNOTAVAILABLE zurück.

Bemerkungen

VirtualQuery stellt Informationen zu einem Seitenbereich in einem virtuellen Adressraum des aufrufenden Prozesses bereit. Diese Implementierung legt den Wert des pResult-Parameters auf die Anzahl der im Informationspuffer zurückgegebenen Bytes fest und gibt einen HRESULT-Wert zurück. In der Win32-Funktion VirtualQuery ist der Rückgabewert die Puffergröße. Weitere Informationen finden Sie in der Dokumentation zur Windows-Plattform.

Wichtig

Die Implementierung VirtualQuery des Betriebssystems verursacht keinen Deadlock und kann mit zufälligen Threads vollständig ausgeführt werden, die im Benutzercode angehalten sind. Lassen Sie beim Implementieren einer gehosteten Version dieser Methode große Vorsicht walten.

Anforderungen

Plattformen: Informationen finden Sie unter Systemanforderungen.

Header: MSCorEE.h

Bibliothek: Als Ressource in „MsCorEE.dll“ enthalten.

.NET Framework-Versionen: Seit 2.0 verfügbar.

Siehe auch