레지스트리에 키를 쓰려고합니다. 그것은 Windows XP에서 작동하지만 Windows 7/Vista에서는 실패합니다."요청 된 레지스트리 액세스가 허용되지 않습니다." Windows 7/Vista에서
아래 코드는 "요청 된 레지스트리 액세스가 허용되지 않습니다"라는 설명이있는 보안 예외를 발생시킵니다.
RegistryKey regKey =
Registry.LocalMachine.OpenSubKey("SOFTWARE\\App_Name\\" + subKey, true);
이것이 UAC 설정과 관련이 있다는 것을 알고 있지만 이상적인 해결 방법을 찾을 수 없습니다.
다른 프로세스를 포크하고 싶지 않고 자격 증명을 요청하지 않을 수도 있습니다. Windows XP에서와 같은 방식으로 작동하도록하십시오. 매니페스트 파일을 수정하고 requestedExecutionLevel 노드를 제거했습니다. 이것은 트릭을 할 것으로 보인다.
가능한 다른 해결 방법이 있습니까? "manifest"솔루션에 심각한 결함이 있습니까?
처럼 CurrentUser하는 LocalMachine을 변경했습니다. 현재 컴퓨터의 모든 사용자가이 레지스트리 항목을 읽고 쓸 수 있어야합니다. – Trainee4Life
그런 경우 응용 프로그램을 관리자 권한으로 실행해야합니다. – Giorgi
참조 http://stackoverflow.com/questions/562350/requested-registry-access-is-not-allowed – CSharper