GetRequestedRuntimeInfo 函数
获取应用程序请求的公共语言运行时 (CLR) 的版本和目录信息。
.NET Framework 4 已弃用此函数。
语法
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) 错误代码。
返回代码 | 说明 |
---|---|
S_OK | 该方法已成功完成。 |
ERROR_INSUFFICIENT_BUFFER | 目录缓冲区容量不足以存储目录路径。 - 或 - 版本缓冲区容量不足以存储版本字符串。 |
备注
GetRequestedRuntimeInfo
方法会返回有关加载到进程中的版本的运行时信息,而这不一定是计算机上安装的最新版本。
在 .NET Framework 版本 2.0 中,可以通过使用 GetRequestedRuntimeInfo
方法获取有关最新安装的版本的信息,如下所示:
将
pExe
、pwszVersion
和pConfigurationFile
参数指定为 null。指定
runtimeInfoFlags
参数的RUNTIME_INFO_FLAGS
枚举中的 RUNTIME_INFO_UPGRADE_VERSION 标记。
GetRequestedRuntimeInfo
方法在以下情况下不会返回最新的 CLR 版本:
存在指定加载特定 CLR 版本的应用程序配置文件。 请注意,.NET Framework 将使用配置文件,即使将
pConfigurationFile
参数指定为 null 也是如此。指定较早的 CLR 版本,调用 CorBindToRuntimeEx 方法。
针对早期 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 及更高版本