_CorValidateImage 函数

更新:2007 年 11 月

加载托管模块映像时通知加载程序。

在 Windows XP 中,操作系统加载程序通过检查通用对象文件格式 (COFF) 头中的某个位来检查是否有托管模块。一个设置位表示一个托管模块。如果加载程序要检测托管模块,则加载 Mscoree.dll。_CorValidateImage 通知加载程序何时加载托管模块映像,而 _CorImageUnloading 通知加载程序何时卸载托管模块映像。_CorValidateImage 执行以下操作:

  • 确保代码是有效的托管代码。

  • 将映像中的入口点更改为运行库中的入口点。

对于 64 位版本的 Windows,_CorValidateImage 会修改内存中的映像,将其从 PE32 格式转换为 PE32+ 格式。

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

参数

  • ImageBase
    [in] 一个指向映像开始位置的指针,该映像要作为托管代码进行验证。该映像必须已加载到内存中。

  • FileName
    [in] 该映像的文件名。

返回值

此方法返回标准值 E_INVALIDARG、E_OUTOFMEMORY、E_UNEXPECTED 和 E_FAIL 以及下列值。

  • STATUS_INVALID_IMAGE_FORMAT
    映像无效。该值具有 HRESULT 0xC000007BL。

  • STATUS_SUCCESS
    映像有效。该值具有 HRESULT 0x00000000L。

要求

**平台:**请参见 .NET Framework 系统要求

**头文件:**Cor.h

**库:**作为一项资源包含在 MsCorEE.dll 中

**.NET Framework 版本:**3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0

请参见

其他资源

元数据全局静态函数