Freigeben über


_CorValidateImage-Funktion

Überprüft Images des verwalteten Moduls, und benachrichtigt das Betriebssystemladeprogramm, nachdem sie geladen wurden.

STDAPI _CorValidateImage ( 
   [in] PVOID* ImageBase,
   [in] LPCWSTR FileName
);

Parameter

  • ImageBase
    [in] Ein Zeiger auf die Anfangsposition des Images, dessen Gültigkeit als verwalteter Code überprüft werden soll. Das Image muss vorher in den Arbeitsspeicher geladen werden.

  • FileName
    [in] Der Dateiname des Images.

Rückgabewert

Diese Funktion gibt die Standardwerte E_INVALIDARG, E_OUTOFMEMORY, E_UNEXPECTED und E_FAIL sowie die folgenden Werte zurück:

Rückgabewert

Beschreibungen

STATUS_INVALID_IMAGE_FORMAT

Das Image ist ungültig. Dieser Wert weist für HRESULT 0xC000007BL auf.

STATUS_SUCCESS

Das Image ist gültig. Dieser Wert weist für HRESULT 0x00000000L auf.

Hinweise

Unter Windows XP und höher sucht das Ladeprogramm des Betriebssystems nach verwalteten Modulen, indem ein Bit im Verzeichnis des COM-Deskriptors im COFF-Header überprüft wird. Ein festgelegtes Bit zeigt ein verwaltetes Modul an. Wenn das Ladeprogramm ein verwaltetes Modul erkennt, wird "MsCorEE.dll" geladen und _CorValidateImage aufgerufen. Diese Datei führt die folgenden Aktionen aus:

  • Bestätigt, dass das Bild ein gültiges verwaltetes Modul ist.

  • Ändert den Einstiegspunkt im Image in einen Einstiegspunkt in der Common Language Runtime (CLR).

  • Bei 64-Bit-Versionen von Windows, ändert das Image im Arbeitsspeicher vom Format PE32 in das Format PE32+.

  • Benachrichtigt das Ladeprogramm, wenn die Abbilder des verwalteten Moduls geladen werden.

Für ausführbare Images ruft das Betriebssystemladeprogramm dann die _CorExeMain-Funktion auf, unabhängig von dem in der ausführbaren Datei angegebenen Einstiegspunkt. Für DLL-Assemblyabbilder ruft das Ladeprogramm die _CorDllMain-Funktion auf.

_CorExeMain oder _CorDllMain führt die folgenden Aktionen aus:

  • Initialisiert die CLR.

  • Sucht den verwalteten Einstiegspunkt vom CLR-Header der Assembly.

  • Startet die Ausführung.

Das Ladeprogramm ruft die _CorImageUnloading-Funktion auf, wenn verwaltete Modulimages entladen werden. Diese Funktion führt jedoch keine Aktion aus; sie gibt nur Ergebnisse zurück.

Anforderungen

Plattformen: siehe Systemanforderungen für .NET Framework.

Header: Cor.h

Bibliothek: als Ressource in MsCorEE.dll enthalten

.NET Framework-Versionen: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0

Siehe auch

Weitere Ressourcen

Globale statische Metadatenfunktionen