GetRequestedRuntimeInfo 函数

获取应用程序请求的公共语言运行时(CLR)的版本和目录信息。

.NET Framework 4 中已弃用此函数。

Syntax

HRESULT GetRequestedRuntimeInfo (
    [in]  LPCWSTR  pExe,
    [in]  LPCWSTR  pwszVersion,
    [in]  LPCWSTR  pConfigurationFile,
    [in]  DWORD    startupFlags,
    [in]  DWORD    runtimeInfoFlags,
    [out] LPWSTR   pDirectory,
    [in]  DWORD    dwDirectory,
    [out] DWORD   *dwDirectoryLength,
    [out] LPWSTR   pVersion,
    [in]  DWORD    cchBuffer,
    [out] DWORD   *dwlength
);

参数

pExe [in]应用程序的名称。

pwszVersion [in]一个指定运行时版本号的字符串。

pConfigurationFile [in]与 .. 关联的 pExe配置文件的名称。

startupFlags [in]一个或多个 STARTUP_FLAGS 枚举值。

runtimeInfoFlags [in]一个或多个 RUNTIME_INFO_FLAGS 枚举值。

pDirectory [out]成功完成后,包含运行时的目录路径的缓冲区。

dwDirectory [in]目录缓冲区的长度。

dwDirectoryLength [out]指向目录路径字符串长度的指针。

pVersion [out]一个缓冲区,其中包含成功完成后运行时的版本号。

cchBuffer [in]版本字符串缓冲区的长度。

dwlength [out]指向版本字符串长度的指针。

返回值

除以下值外,此方法还返回 WinError.h 中定义的标准组件对象模型 (COM) 错误代码。

返回代码 Description
S_OK 该方法已成功完成。
缓冲区不足错误 目录缓冲区不够大,无法存储目录路径。

- 或 -

版本缓冲区不够大,无法存储版本字符串。

注解

该方法 GetRequestedRuntimeInfo 返回有关加载到进程的版本的运行时信息,这不一定是计算机上安装的最新版本。

在 .NET Framework 版本 2.0 中,可以使用以下 GetRequestedRuntimeInfo 方法获取有关最新安装版本的信息:

  • pExe参数 pwszVersion指定 pConfigurationFile 为 null。

  • 在参数的runtimeInfoFlags枚举中RUNTIME_INFO_FLAGS指定RUNTIME_INFO_UPGRADE_VERSION标志。

此方法 GetRequestedRuntimeInfo 在以下情况下不返回最新的 CLR 版本:

  • 指定加载特定 CLR 版本的应用程序配置文件存在。 请注意,即使为参数指定 null pConfigurationFile ,.NET Framework 也会使用配置文件。

  • 调用 CorBindToRuntimeEx 方法,指定早期 CLR 版本。

  • 为早期 CLR 版本编译的应用程序当前正在运行。

runtimeInfoFlags对于参数,一次只能指定枚举的RUNTIME_INFO_FLAGS一个体系结构常量:

  • RUNTIME_INFO_REQUEST_IA64

  • RUNTIME_INFO_REQUEST_AMD64

  • RUNTIME_INFO_REQUEST_X86

要求

平台:请参阅系统要求

页眉: MSCorEE.h

库: MSCorEE.dll

.NET Framework 版本: 自 1.1 起可用

另请参阅