レジストリを読み込むときにエラーが出ます。(指定されたキャストは有効ではありません)
bool b_tbar
private void Form1_Load(object sender, EventArgs e)
{
try
{
Microsoft.Win32.RegistryKey regkey =
Microsoft.Win32.Registry.CurrentUser.OpenSubKey(@"Software\***", false);
if (regkey == null)
{
b_tbar = true;
return;
}
b_tbar = (bool)regkey.GetValue("tbar"); <ーーここでエラー
regkey.Close();
}
catch (Exception e1)
{
MessageBox.Show( e1.Message);
}
}
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
Microsoft.Win32.RegistryKey regkey =
Microsoft.Win32.Registry.CurrentUser.CreateSubKey(@"***");
regkey.SetValue("tbar", b_tbar);
regkey.Close();
}
どこをどうなおしたら良いのでしょか?教えてくださいお願いいたします。
No.2ベストアンサー
- 回答日時:
「REG_SZ」ということは文字列です。
キャストではなくboolのConvertは使えないでしょうか?
No.1
- 回答日時:
を見る限り、bool型をレジストリに設定したときには別の型に変換されているのではないかと思います。
bool test = true;
Microsoft.Win32.RegistryKey regkey =
Microsoft.Win32.Registry.CurrentUser.CreateSubKey(@"***");
regkey.SetValue("test", test);
RegistryValueKind rvk = regkey.GetValueKind("test");
regkey.Close();
というコードで実際にどの型に変換されているかを確認してみたらどうでしょうか。
ところで、値設定のときは @"***" で、値取得のときは @"Software\***" となって設定先と取得先が一致していないようにみえますが、本来のコードでもそのとおりなのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# Windows Formアプリからコンソールを呼び出して文字を出力させたい 8 2023/05/09 10:53
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- C言語・C++・C# C# で、あるフォルダー内にあるすべてのテキストファイルを別のフォルダーにコピーする。 4 2022/11/21 13:23
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
- C言語・C++・C# 大量のデータを読み込んで表示する速度を改善したい 8 2023/05/07 13:29
- Visual Basic(VBA) 九九の答えの計算 3 2022/12/20 22:13
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- Visual Basic(VBA) VBAでファイルを開くプログラムがエラーです 2 2023/02/21 16:56
- C言語・C++・C# ExcelCS 1 2023/01/27 19:47
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB.NETで1→A、2→B、26→Z、27→AA...
-
文字型を日付/時刻型に変換する...
-
Boolean型変数の値を反転する方法
-
vb6の桁数指定
-
16進コード文字列を文字列に変換
-
バイナリデータの文字列変換(5...
-
C++ 文字列変数と16進数の比較
-
WORD型をCString型に変換する方法
-
16進をASCIIコードに変換する...
-
C#でListとDictionaryの判別方法
-
バイト型のデータをLong型に変換
-
【ExcelVBA】値を変更しながら...
-
VBA 変数名に変数を使用したい。
-
Access VBA 添付型フィールド
-
Excel2010のinputboxで複数デー...
-
VBAコンボボックスの内容が反映...
-
EXCELを使って、アクセスログを...
-
構造体配列内の文字列検索のよ...
-
VBAでアクセスDBからデータの取...
-
『列名 '担当者CD' があいま...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB.NETで1→A、2→B、26→Z、27→AA...
-
WORD型をCString型に変換する方法
-
VB6.0の「vbFromUnicode」はVB....
-
16進をASCIIコードに変換する...
-
C++ 文字列変数と16進数の比較
-
バイト型のデータをLong型に変換
-
16進コード文字列を文字列に変換
-
VC++ std::stringからLPCWSTRに...
-
10進数を2進数
-
2の補数の計算について
-
数字→漢数字変換
-
Boolean型変数の値を反転する方法
-
RGBとHSLを相互変換する際の端...
-
【C++/CLI】int型からString型...
-
textbox.textやlabel.captionの...
-
C#でListとDictionaryの判別方法
-
補数について教えてください!
-
vb6の桁数指定
-
C言語のGPS問題が分かりません。
-
Pythonの指数表記について
おすすめ情報