C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[5]: client profile と full の判別方法


(過去ログ 116 を表示中)

[トピック内 6 記事 (1 - 6 表示)]  << 0 >>

■68620 / inTopicNo.1)  client profile と full の判別方法
  
□投稿者/ muuuuuuuu (1回)-(2013/11/01(Fri) 13:43:08)

分類:[C#] 

こんにちは。

作成したプログラムを人に使ってもらったときに
Framework4がインストールしているにもかかわらずエラーが出ました。

使ってくれた人は Freamework4 client profile で full 版ではないことが原因でした。

そこでプログラムを起動したときに client profile なのか full なのかをチェックして
full版ではない場合はインストールの案内表示をしたいと思っています。

http://www.atmarkit.co.jp/fdotnet/dotnettips/278clrversion/clrversion.html
でバージョンはわかるものの 同じv4.0.3031を返してきます。

どのような方法があるでしょうか。
よろしくお願いします。

C# 2013
Framework4

引用返信 編集キー/
■68622 / inTopicNo.2)  Re[1]: client profile と full の判別方法
□投稿者/ とっちゃん (171回)-(2013/11/01(Fri) 13:50:09)
とっちゃん さんの Web サイト
No68620 (muuuuuuuu さん) に返信
> http://www.atmarkit.co.jp/fdotnet/dotnettips/278clrversion/clrversion.html
> でバージョンはわかるものの 同じv4.0.3031を返してきます。
>
> どのような方法があるでしょうか。
> よろしくお願いします。
>
その記事からもリンクがありますが
http://www.atmarkit.co.jp/ait/articles/1210/26/news086.html
で、v4 や v4.5 を含むインストールバージョンのチェック方法の記事があります。

こちらの方法で調べてみてはいかがでしょう?



引用返信 編集キー/
■68624 / inTopicNo.3)  Re[2]: client profile と full の判別方法
□投稿者/ muuuuuuuu (2回)-(2013/11/01(Fri) 14:15:27)
No68622 (とっちゃん さん) に返信

ありがとうございます。
ご紹介頂いたページと
http://www.atmarkit.co.jp/ait/articles/1210/26/news086.html
こちらのレジストリの取得方法を参考にコードを書きました。
http://www.atmarkit.co.jp/fdotnet/dotnettips/118regget/regget.html

しかしながら RegistryKey rKey は null を返してきます。


レジストリーエディターでは存在を確認しています。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full





// 操作するレジストリ・キーの名前
string rKeyName = @"SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full";
// 取得処理を行う対象となるレジストリの値の名前
string rGetValueName = "Install";

// レジストリの取得
try
{
// レジストリ・キーのパスを指定してレジストリを開く
RegistryKey rKey = Registry.LocalMachine.OpenSubKey(rKeyName);

// レジストリの値を取得
string location = (string)rKey.GetValue(rGetValueName);

// 開いたレジストリ・キーを閉じる
rKey.Close();

// コンソールに取得したレジストリの値を表示
Console.WriteLine(location);
}
catch (NullReferenceException)
{
// レジストリ・キーまたは値が存在しない
Console.WriteLine("レジストリ[" + rKeyName
+ "]の[" + rGetValueName + "]がありません!");
}
引用返信 編集キー/
■68625 / inTopicNo.4)  Re[3]: client profile と full の判別方法
□投稿者/ muuuuuuuu (3回)-(2013/11/01(Fri) 14:21:15)
すみません。先ほど値が取れないと書きましたが、無事に取得出来ました。
特にコードは変更していません。


引用返信 編集キー/
■68627 / inTopicNo.5)  Re[4]: client profile と full の判別方法
□投稿者/ とっちゃん (173回)-(2013/11/01(Fri) 14:26:33)
とっちゃん さんの Web サイト
No68625 (muuuuuuuu さん) に返信
> すみません。先ほど値が取れないと書きましたが、無事に取得出来ました。
> 特にコードは変更していません。
>
うまくいったようなので、一応解決済みにしておきますね。
解決済み
引用返信 編集キー/
■68628 / inTopicNo.6)  Re[5]: client profile と full の判別方法
□投稿者/ muuuuuuuu (4回)-(2013/11/01(Fri) 14:47:30)
No68627 (とっちゃん さん) に返信

ありがとうございます。
解決済みフラグ忘れていました。

> ■No68625 (muuuuuuuu さん) に返信
>>すみません。先ほど値が取れないと書きましたが、無事に取得出来ました。
>>特にコードは変更していません。
>>
> うまくいったようなので、一応解決済みにしておきますね。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -