获取应用程序请求的公共语言运行时(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 起可用