2012-03-31 2 views
4

는이 대화 상자가 표시됩니다사용자 정의 UAC 권한 UI를 구현하는 방법은 무엇입니까? 윈도우 탐색기 (Windows 7)에서 파일을 삭제하는 경우 관리자 권한이 파일을 삭제해야하는 경우

enter image description here

은에서 효과의이 종류를 달성 할 수있는 방법이 있나요 내 앱? 현재

사용자가 요구하는, 일반적인 UAC 대화 상자가 표시됩니다, 그래서 나는 (그것을 삭제하는 것이 아니라 파일을 대체) 액션의 같은 종류를 수행 할 '관리자 권한으로'프로세스를 시작하고 있습니다 :

"수행 다음 프로그램이이 컴퓨터를 변경하도록 허용 하시겠습니까? "

타사 앱에서 Explorer (일반 UAC 대화 상자와 대조)에 표시되는 유용한 UI 종류가 있습니까?

제 3자가 비공식적으로 권한을 강화할 수 있기 때문에 아무 것도 생각하지 않습니다.

답변

2

Windows 7의 기본 설정은 대부분의 시스템 구성 요소가 UAC 대화 상자를 표시하지 않기위한 것입니다.

항상 프롬프트로 설정을 변경하면 탐색기 대화 상자에서 계속을 누르면 일반 UAC 프롬프트가 생성됩니다. 비 시스템 바이너리로

는 항상 가장 관대 UAC 설정을 제외하고 메시지를 표시 할 코드는 (메시지를 표시하지 않습니다.)

+0

네, 원하는 모든 UI에서 높이 입력 버튼 (이 경우 계속)을 표시 할 수 있지만 고도 프로세스는 새 프로세스를 시작하거나 상승 된을 만들지 여부와 관계없이 항상 시스템 확인 메시지를 표시합니다 COM 개체. –

4

사용 Button_SetElevationRequiredState은 버튼에 방패를 추가 할 수 있습니다. 사용자가 버튼을 누르면 use the COM elevation moniker이 도우미 객체를 만듭니다.

+0

방패 아이콘 설정에 대한 포인터를 보내 주셔서 감사합니다. 나는 그 함수/매크로를 사용하기위한 올바른 #define을 가지고 있지 않았기 때문에 SendMessage를 사용하여 끝냈다. (#define _Win32로 무엇이든간에 faffing을하고 싶지 않았다.) – mackenir

+0

필자는 COM을 사용할 수 없으므로 EXE 사본을 admin으로 실행하고 일부 cmdline 옵션에는 'admin stuff'명령을 사용합니다. – mackenir

+0

방패 아이콘은 "이 버튼을 누르면 누군가 승락 허가를 요청할 것이므로 놀라지 마십시오."라는 경고 만 표시됩니다. 상승 권한을 요청하는 한 가지 방법은 COM을 사용하는 것이지만 명령 줄도 작동합니다. –