如何判断XP上运行的应用程序加载了哪个版本的.NET CLR?

如何判断XP上运行的应用程序加载了哪个版本的.NET CLR?,.net,version,clr-hosting,.net,Version,Clr Hosting,我知道计算机上有由explorer.exe加载的托管shell扩展。我想知道什么版本的CLR加载到explorer.exe中。如果我运行的是Vista或Win7,我可以使用并查看explorer.exe属性的.NET程序集选项卡。但是,这在XP上不起作用。有没有办法在XP上获取此信息?Process Explorer不也显示已加载的DLL吗?在该列表中查找mscorwks.dll,并查看其加载位置。(这是工作站版本-我不记得服务器版本是什么,但我不认为您会在XP框中看到它。查找以mscor开头的

我知道计算机上有由explorer.exe加载的托管shell扩展。我想知道什么版本的CLR加载到explorer.exe中。如果我运行的是Vista或Win7,我可以使用并查看explorer.exe属性的.NET程序集选项卡。但是,这在XP上不起作用。有没有办法在XP上获取此信息?

Process Explorer不也显示已加载的DLL吗?在该列表中查找
mscorwks.dll
,并查看其加载位置。(这是工作站版本-我不记得服务器版本是什么,但我不认为您会在XP框中看到它。查找以
mscor
开头的任何内容作为第一近似值。)

Process Explorer不也显示已加载的DLL吗?在该列表中查找
mscorwks.dll
,并查看其加载位置。(这是工作站版本-我记不起服务器版本是什么,但我不认为您会在XP框中看到它。查找任何以
mscor
开头的内容作为第一近似值。)

如果目标计算机上安装了Visual Studio,您可以从中使用
来查看哪个版本在进程中加载CLR的

例如:

C:\>clrver 4900
v2.0.50727
这表示PID 4900的进程已加载.NET 2

C:\>clrver -h
Displays CLR versions
Usage: clrver [-?|-all|<PID>]

        -all   - Displays all processes on the machine using the CLR.
        <PID> - Displays the version of the CLR used by the specified process.
        -?    - Displays this help screen.

If called with no options, clrver will display all installed CLR versions.
C:\>clrver-h
显示CLR版本
用法:clrver[-?|-all |]
-全部-显示计算机上使用CLR的所有进程。
-显示指定进程使用的CLR版本。
-?    - 显示此帮助屏幕。
如果在没有选项的情况下调用,clrver将显示所有已安装的CLR版本。

如果目标计算机上安装了Visual Studio,则可以从中使用查看进程中加载的CLR版本

例如:

C:\>clrver 4900
v2.0.50727
这表示PID 4900的进程已加载.NET 2

C:\>clrver -h
Displays CLR versions
Usage: clrver [-?|-all|<PID>]

        -all   - Displays all processes on the machine using the CLR.
        <PID> - Displays the version of the CLR used by the specified process.
        -?    - Displays this help screen.

If called with no options, clrver will display all installed CLR versions.
C:\>clrver-h
显示CLR版本
用法:clrver[-?|-all |]
-全部-显示计算机上使用CLR的所有进程。
-显示指定进程使用的CLR版本。
-?    - 显示此帮助屏幕。
如果在没有选项的情况下调用,clrver将显示所有已安装的CLR版本。

哦,太酷了。因此,如果我搜索“mscorwks”并在结果中列出“explorer.exe”,在Handle或DLL下显示它的路径C:\Windows\Microsoft.NET\Framework\v2.0.50727,那么这意味着它使用的是CLR v2.0.50727?@Jack Smith:这意味着explorer.exe已经加载了CLR v2.xxx,是的。请记住,CLR v4允许在同一进程中加载多个版本的CLR…谢谢。如果CLR 4正在运行,并且也加载了早期版本,是否会从v4位置加载mscorwks.dll?哦,太酷了。因此,如果我搜索“mscorwks”并在结果中列出“explorer.exe”,在Handle或DLL下显示它的路径C:\Windows\Microsoft.NET\Framework\v2.0.50727,那么这意味着它使用的是CLR v2.0.50727?@Jack Smith:这意味着explorer.exe已经加载了CLR v2.xxx,是的。请记住,CLR v4允许在同一进程中加载多个版本的CLR…谢谢。如果CLR 4正在运行并且也加载了早期版本,是否会从v4位置加载mscorwks.dll?