2012-08-14 96 views
0

MSDN,該clrver.exe工具將顯示,如果你使用爲什麼Clrver顯然沒有顯示所有CLR處理

clrver -all 

但是當我運行這個它不正在使用CLR的計算機上的所有進程不會顯示我編寫的.Net應用程序。我的應用程序必須使用CLR才能運行,所以看起來很奇怪它不在列表中。

你知道這是爲什麼發生嗎?

回答

4

這無疑是一個版本問題。鍵入where clrver.exe以查看您正在使用哪一個,它應該向您顯示一個或兩個,存儲在Windows SDK目錄中。當您獲得Bin\NETFX 4.0 Tools中的一個時,您將擁有一個可以檢測運行CLR版本2以及CLR版本4的進程的版本。

但是,當您在Bin中得到一個版本時,或者只有舊版本的SDK安裝(6.0或更早版本),那麼你將運行一個clrver.exe版本,不知道任何關於.NET 4及以上的版本。因此,您只會看到運行CLR版本2的進程。

您需要clrver.exe的版本檢查程序。有點諷刺,是不是;)

+0

感謝漢斯,我的確有兩個版本,'bin'中只顯示v2,'bin \ NETFX..'中顯示v2和v4 - 但仍然他們都沒有列出我的應用程序。奇怪的 – RichK 2012-08-15 12:50:13

+0

我看不到你的應用程序,你必須更好地描述它。爲什麼這是一個問題呢?你真的想用這個工具做什麼? – 2012-08-15 12:52:30

+0

只是在C#中打開了一個WPF應用程序,並且它在運行時我期望'clrver -all'將它包含在使用CLR的進程列表中。我正在使用該工具在幾臺機器上檢查CLR版本,然後檢出'-all'模式,並認爲使用C#編寫的應用程序沒有顯示出來很奇怪。 – RichK 2012-08-15 12:55:31