2009-04-12 12 views
4

私は公式の方法はレジストリだと知っていますが、これはちょっと時間がかかることです。PCにはどの.NET Frameworkがインストールされているかを調べるツールはありますか?

いくつかのPCにインストールされているバージョンをチェックする必要があります。Visual Studioはありませんが、すべて(おそらく) .NET Frameworkのバージョンです。

お湯はおそらくすでに存在するので、どこで見つけることができますか?

答えて

2

ここですぐにそれをしない自由な軽量のツールです - .NET Version detector 2007

は、あなたがそれを手動で行いたい場合は、this pageはそれを行うには4-5の良い方法を示しています。 MS Support pageは、Frameworkフォルダを開き、インストールされているバージョン(フォルダ名)を確認するという簡単な方法を示しています!

あなたがプログラムでそれをしたい場合はしかし、HttpBrowserCapabilitiesクラスがRequest.Browser.GetClrVersions()コールを介してアクセス可能であるGetClrVersions()方法を提供しています。もちろん、他の人が言及しているとして、あなたはいつものJavascript(私はこれがあなたにだけIEで.NETのバージョンを表示すると思います)を経由して、あまりにもブラウザのNavigator.UserAgentプロパティを照会することができます:ここ

javascript:alert(navigator.userAgent) 
0

SmallestDotNetのjavascriptをご覧ください。 a good article over at the CodeProjectもあります。

+0

もちろん、ユーザーエージェントの方法はIEにのみ適用され、アドインを無効にしていない場合はFirefoxと.NET 3.5にのみ適用されます。 – blowdart

3
  1. は、それはあなたが持っている.NETバージョンを確認するためには、ブラウザのユーザーエージェントを使用しているsmallestdotnetのホームページをみてください。
  2. goto \ Windows \ Microsoft.NET \ Framework \すべてのバージョンが表示されます。
0

がAでASP.netサイトまたはwinformsに配置できるコード


using System; 
using System.Collections.Generic; 
using System.Text; 
using System.Runtime.InteropServices; 

namespace ConsoleApplication1 
{ 
class Program 
{ 
[DllImport("mscoree.dll")] 
private static extern int GetCORSystemDirectory(
[MarshalAs(UnmanagedType.LPWStr)]StringBuilder pbuffer, 
int cchBuffer, ref int dwlength); 

static void Main(string[] args) 
{ 
GetClrInstallationDirectory(); 
} 

private static void GetClrInstallationDirectory() 
{ 
int MAX_PATH = 260; 
StringBuilder sb = new StringBuilder(MAX_PATH); 
GetCORSystemDirectory(sb, MAX_PATH, ref MAX_PATH); 
Console.WriteLine(sb.ToString()); 
while(Console.Read() != 'q') ; 
} 

} 
}
1

私はPowerShellスクリプトを書くときにこの問題を頻繁に実行します。私はこれを行うための最善の方法は、以下のベースディレクトリの各

  • %のWINDIR%\ Microsoft.Net \ Frameworkの
  • %のWINDIR%\ Microsoft.Net \ Framework64
  • で次のチェックを実行することです見つけます

2つ目のディレクトリを忘れないでください。また、64ビットマシンでアプリケーションを破壊する危険性があります。

これらの開始点ごとに、ディレクトリv\d+\\.\d+\\.\d+と一致するディレクトリを探し、mscorlib.dllファイルが含まれています。実際にそのバージョンのフレームワークがインストールされていなくても名前が存在する可能性があるため、単にディレクトリ名を探すだけでは不十分です。たとえば、Vistaマシンをお持ちの場合、v1.0.3705とv1.1.4322もありますが、どちらのフレームワークも実際にインストールされていません。

関連する問題