Dela via


_CorValidateImage Function

Validerar avbildningar av hanterade moduler och meddelar operativsystemets inläsare när de har lästs in.

Syntax

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

Parameters

ImageBase [i] En pekare till startplatsen för avbildningen för att verifiera som hanterad kod. Avbildningen måste redan ha lästs in i minnet.

FileName [i] Filnamnet på avbildningen.

Return Value

Den här funktionen returnerar standardvärdena E_INVALIDARG, E_OUTOFMEMORY, E_UNEXPECTEDoch E_FAILsamt följande värden.

Return value Description
STATUS_INVALID_IMAGE_FORMAT Bilden är ogiltig. Det här värdet har HRESULT 0xC000007BL.
STATUS_SUCCESS Avbildningen är giltig. Det här värdet har HRESULT 0x00000000L.

Remarks

I Windows XP och senare versioner söker operativsystemets inläsare efter hanterade moduler genom att undersöka COM Descriptor Directory-biten i COFF-huvudet (Common Object File Format). En uppsättningsbit anger en hanterad modul. Om inläsaren identifierar en hanterad modul läser den in MsCorEE.dll och anropar _CorValidateImage, som utför följande åtgärder:

  • Bekräftar att avbildningen är en giltig hanterad modul.

  • Ändrar startpunkten i avbildningen till en startpunkt i CLR (Common Language Runtime).

  • För 64-bitarsversioner av Windows ändrar den avbildning som finns i minnet genom att omvandla den från PE32 till PE32+-format.

  • Återgår till inläsaren när de hanterade modulbilderna läses in.

För körbara avbildningar anropar operativsystemets inläsare sedan funktionen _CorExeMain , oavsett vilken startpunkt som anges i den körbara filen. För DLL-sammansättningsbilder anropar inläsaren funktionen _CorDllMain .

_CorExeMain eller _CorDllMain utför följande åtgärder:

  • Initierar CLR.

  • Letar upp den hanterade startpunkten från sammansättningens CLR-huvud.

  • Begins execution.

Inläsaren anropar funktionen _CorImageUnloading när hanterade modulbilder tas bort. Den här funktionen utför dock ingen åtgärd. den bara returnerar.

Requirements

Plattformar: Se Systemkrav.

Header: Cor.h

Bibliotek: Ingår som en resurs i MsCorEE.dll

.NET Framework-versioner: Tillgänglig sedan 1.0