내 C# 코드에서 레지스트리 키를 설정하려고하지만 항상 작동하지 않습니다. 때로는 효과가 있고 때로는 그렇지 않습니다. 나는 미치광이가되기 시작했습니다 ... 이전 프로젝트에서 필자는 레지스트리에 쓰고 읽는 데 아무런 문제가 없었지만 지금은합니다.레지스트리 키 설정이 작동하지 않습니다. 때때로
는 여기에 내가 사용하고 코드입니다 : 이미 시도했지만 작동하지 않았다 무엇
string newVersion = "10A";
RegistryKey key = null;
try
{
key = Registry.CurrentUser.CreateSubKey("Software\\stuff1\\stuff2 " + newVersion + "\\" + newVersion + "\\stuff3\\Settings", RegistryKeyPermissionCheck.ReadWriteSubTree);
key.SetValue("CopyConvertDone", "1", RegistryValueKind.String);
key.Flush();
rep.Message("CopyConvertDone registry key set for revision: " + newVersion);
}
catch (Exception e)
{
rep.Error(e);
}
finally
{
if (key != null)
{
key.Close();
}
else
{
rep.Error("Registry key is set to null.");
}
}
: 를 - 대신 내가 true로 설정 쓰기 매개 변수 OpenSubKey 시도 CreateSubKey을 사용. - .Flush() 메서드가 추가되었습니다. - Thread.Pause (2000)는 내 프로그램을 진행하기 전에 잠시 시간을내어 주셨습니다 (이 레지스트리 키가 필요함)
오류가 발생하지 않았으며 해당 하위 키는 이미 있지만 값 (CopyConvertDone)이 없습니다. '티.
누구든지이 코드에서 문제를 볼 수 있으며 가능한 해결책이 있습니까?
실패 할 때 어떤 일이 발생하는지 분명히 할 수 있습니까? 예를 들어 레지스트리에 어떤 예외가 발생했거나 변경되지 않았습니까? – glenatron
위 코드를 실제로 호출하고 있습니까? –