При вызове функции реестра OpenSubKey из приложения C # появляется следующее исключение, и из-за этого приложение не запускается.
Приложение: EMR.exe Framework Версия: v4.0.30319 Описание: Процесс был прерван из-занеобработанное исключение.Информация об исключении: System.Security.SecurityException в System.ThrowHelper.ThrowSecurityException (System.ExceptionResource) в Microsoft.Win32.RegistryKey.OpenSubKey (System.String, Boolean)
Ниже приведено значение ключа реестра, передаваемое в openSubkeyHKEY_LOCAL_MACHINE \ SOFTWARE \ EMR \ 4.01.00 \ Технические данные
И еще одна вещь, после первой установки я могу запустить приложение.Но после перезагрузки компьютера при попытке запуска я вижу эту ошибку.
Ниже приведен фрагмент кода:
public RegistryKey GetRegKeyHandle(String key)
{
key = BASE_REG_KEY + "\\" + key;
if (MainFrame.GetUIControlObject().MGDIsAdmin())
{
MessageBox.Show("Entered to MGDIsAdmin");
regWritable = true;
RegistryKey rkTest = Registry.LocalMachine.OpenSubKey(key, true);
return rkTest;
}
else
{
return Registry.LocalMachine.OpenSubKey(key);
}
}
Пожалуйста, помогите мне, почему он вызывает исключение безопасности только после перезагрузки?