_CorValidateImage Function

Ellenőrzi a felügyelt modul lemezképeit, és értesíti az operációsrendszer-betöltőt a betöltés után.

Syntax

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

Parameters

ImageBase [in] A rendszerkép kiindulási helyére mutató mutató, amely felügyelt kódként érvényesíthető. A képet már be kell tölteni a memóriába.

FileName [in] A kép fájlneve.

Return Value

Ez a függvény a standard értékeket E_INVALIDARG, E_OUTOFMEMORY, E_UNEXPECTEDés E_FAIL, valamint a következő értékeket adja vissza.

Return value Description
STATUS_INVALID_IMAGE_FORMAT A kép érvénytelen. Ennek az értéknek a HRESULT 0xC000007BL értéke.
STATUS_SUCCESS A kép érvényes. Ennek az értéknek a HRESULT értéke 0x0000000L.

Remarks

Windows XP és újabb verziókban az operációs rendszer betöltője a COM Descriptor Directory bitnek a közös objektumfájl-formátum (COFF) fejlécében való vizsgálatával ellenőrzi a felügyelt modulokat. A beállított bit egy felügyelt modult jelöl. Ha a betöltő egy felügyelt modult észlel, betölti a MsCorEE.dll és a hívásokat _CorValidateImage, amelyek a következő műveleteket hajtják végre:

  • Megerősíti, hogy a rendszerkép egy érvényes felügyelt modul.

  • A kép belépési pontját a közös nyelvi futtatókörnyezet (CLR) belépési pontjának alakítja át.

  • A Windows 64 bites verziói esetében a memóriában lévő rendszerképet pe32-ről PE32+ formátumra alakítva módosítja.

  • A felügyelt modul lemezképeinek betöltésekor visszatér a betöltőhöz.

Végrehajtható rendszerképek esetén az operációs rendszer betöltője ezután meghívja a _CorExeMain függvényt, függetlenül a végrehajtható fájlban megadott belépési ponttól. DLL-szerelvényképek esetén a betöltő meghívja a _CorDllMain függvényt.

_CorExeMain vagy _CorDllMain végrehajtja a következő műveleteket:

  • Inicializálja a CLR-t.

  • Megkeresi a felügyelt belépési pontot a szerelvény CLR-fejlécéből.

  • Begins execution.

A betöltő meghívja a _CorImageUnloading függvényt a felügyelt modul lemezképeinek eltávolításakor. Ez a függvény azonban nem hajt végre semmilyen műveletet; csak visszatér.

Requirements

Platformok: Lásd a rendszerkövetelményeket.

Header: Cor.h

Könyvtár: Erőforrásként szerepel a MsCorEE.dll

.NET-keretrendszerverziók: 1.0 óta érhető el