이것은 나를 괴롭힌다. StackOverflow 전체를 검색하고 UAC에 관한 모든 내용을 읽었습니다. 그러나 나는 아직도 문제에 봉착하고있다..NET File.Delete()가 UAC에서 실패하고 requireAdministrator = True 인 이유는 무엇입니까?
VS 2008를 사용하여, 나는이를 제외한 아무것도하지 않는 간단한 프로그램이 있습니다
File.Delete("c:\windows\fonts\whatever.ttf")
EXE 파일이 True requireAdministrator =와 적절한 매니페스트가 있습니다. 컴파일되면 앱 아이콘이 방패 아이콘을받습니다. 그리고 Admin 또는 Standad 사용자로 로그인 한 응용 프로그램을 실행하면 "다음 프로그램을 변경 하시겠습니까?"라는 확인 대화 상자가 나타납니다. 또한 EXE에서 코드 서명 인증서를 사용합니다.
내가 관리자로 로그인 응용 프로그램을 실행
이 파일을 삭제 : 응용 프로그램을 실행하는 경우, 나는 다음과 같은 동작을 얻을.
그러나 표준 사용자로 로그인하면 UAC 프롬프트가 나타나고 Admin 암호를 입력하지만 삭제가 실행되면 "파일 액세스가 거부되었습니다"라는 오류가 발생합니다.
누군가가 설명해 주시겠습니까? 나는 매니 페스트에서 requiresAdministrator = True가 프로세스를 향상시키는 것으로 생각했습니다. 하지만 여전히 시스템 파일을 삭제할 수는 없습니다.
감사합니다.
삭제할 파일이 ReadOnly인지 반드시 확인하십시오. 그렇다면 파일을 완전히 제어하더라도 오류가 발생합니다. – Peter