내가 응용 프로그램이 관리자 권한으로 실행 0, 에 "EnableLUA"키를 변경하는 C# 응용 프로그램을 생성하고, 오류가 팝업되지 :UAC를 프로그래밍 방식으로 사용하지 않도록 설정 - 변경 사항이 적용되지 않습니까?
//Runs with admin rights
try
{
RegistryKey key =
Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System", true);
key.SetValue("EnableLUA", "0");
key.Close();
}
catch(Exception e)
{
MessageBox.Show("Error: " + e);
}
실제로 1에서 0으로 변경됩니다 레지스트리 키, 컴퓨터를 다시 시작한 후에도 UAC는 계속 활성화됩니다. 그런 다음 제어판> 사용자 계정 컨트롤로 이동하면 슬라이더가 끝까지 내립니다. "저장"을 누르면 (아무 것도 수정하지 않은 채로) 갑자기 UAC가 비활성화 된 것처럼 보입니다.
이것은 일종의 버그일까요 아니면 별난 종류의 보안일까요? 이 주위에 어떤 방법이 있습니까?
덕분에, 나는 관리자 권한으로이 가능해야한다고 생각하지만, 그렇지가 나타납니다. UAC 창을 열고 Tab 키를 두 번 누른 다음 Enter 키를 누르면 매우 엉망이됩니다. 나는 그 사람에게 통보 할 뿐이다. – John
exe의 속성 페이지에서 호환성 탭을 사용하여 항상 상승 된 상태로 실행되도록 응용 프로그램을 구성 할 수 있습니다. 또한 응용 프로그램을 실행하는 지름길을 만들 수도 있습니다. 예 : "elevate myprogramsexe.exe" 프로그램에 일종의 설치 프로그램을 제공하거나 실제 exe를 시작하는 부트 스트랩 exe로 디자인하면 해당 경로로 이동할 수 있습니다. 사용자는 UAC로부터 팝업을 받게되지만 허용되고 실행되면 상승하지 않으므로 더 이상 표시되지 않습니다. –
. @ Ryios 댓글을 주셔서 감사합니다.하지만 상승 된 경우에도 응용 프로그램을 다시 시작할 때 응용 프로그램에서 UAC 프롬프트를 표시합니다. 관리자 권한으로 프로그래밍 방식으로 UAC를 비활성화 할 수 있는지 알고 싶었습니다. 이는 불가능한 것으로 보입니다. – John