_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