変化を見つけることができません。は、C#でレジストリを編集したが、私は次のコードでのC#を経由して、私のレジストリを変更しregeditを
RegistryKey regKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32);
RegistryKey openSubKey = regKey.OpenSubKey(@"SOFTWARE\ASA\Suite", true);
openSubKey?.SetValue("Password", encryptedString, RegistryValueKind.String);
openSubKey?.SetValue("UserName", UserNameTextBox.Text, RegistryValueKind.String);
openSubKey?.SetValue("DomainName", DomainNameTextBox.Text, RegistryValueKind.String);
openSubKey?.Close();
regKey.Close();
これらのエントリがすでに存在しなかったとだけ交換しました。同じ種類のコードを使用して設定を読み込むと、正しい設定が返されますが、regedit.exeでレジストリを開いて手動で検索すると、古い値しか見つかりません。 regedit.exeには次のパスがあります:Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\ASA\Suite
私は既にWOW6432Nodeなしで(そしてHKCUでも)パスを調べましたが、ASAエントリはまったくありません。
誰かがそれをどう考えているのですか?どうして私が行った変更が見えないのですか?私はここで完全に困惑しています...
EDIT:プロジェクトをanyCPUからx86に変更しましたが、変更はありませんでしたが、x64に変更すると、読み込まれたキーはregedit.exeに表示されたものでした。しかし、私はレジストリハイブの32ビット版を開きます。ここに何かを書くと、問題は続きます...どうして変更ができないのですか? x64上のx86アプリケーションは、自動的にWOW6432Nodeに書き込むべきでしょうか?
EDIT2:x86版をx86版でテストしました。私はレジストリを変更し、それを読むことができますが、regeditを使って私は変更を見ることができません... wtfはこれですか?
EDIT3:HKCR \ VirtualStore \ MACHINE \ SOFTWARE \ ASA \ Suiteの下で変更されたキーが見つかりました。理由はわかりませんが、回答を検索してここに投稿します。
しかし、なぜ私はopenSubKey.GetValue(xx)で値を読み取ることができますが、regeditには表示されません。私はこれが答えだとは思わないが、とにかく感謝する。 –