2012-01-24 2 views
0

가 발생합니다.성능 카운터는이 코드입니다 SecurityException가

PerformanceCounterPermission에 대해 읽었습니다. 어떻게해야합니까?

+0

'requestedExecutionLevel'이'requireAdministrator'로 설정되도록 응용 프로그램의 목록을 수정하십시오. –

+0

@CodyGray 해결되었습니다. 감사합니다;) –

+1

당신을 진심으로 환영합니다. 당신이 그것을 받아들이고 질문을 닫을 수 있도록 전체 답변을 추가했습니다. (이제는 더 이상 전화를받지 않습니다!) –

답변

6

응용 프로그램의 프로세스에 적절한 권한 수준이 없습니다. 그것이 보안 예외가 말하는 것입니다.

간단한 수정은 응용 프로그램이 시작될 때 해당 권한을 요청하는 것입니다. requestedExecutionLevelrequireAdministrator으로 설정되도록 애플리케이션 매니페스트를 수정하여이 작업을 수행 할 수 있습니다.

전체 섹션은 다음과 같이 보일 것이다 애플리케이션의 매니페스트에 추가 :

<!-- Identify the application security requirements. --> 
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> 
    <security> 
    <requestedPrivileges> 
     <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> 
    </requestedPrivileges> 
    </security> 
</trustInfo> 

응용 프로그램이 항상 가장 낮은 실행해야하기 때문에 그렇지 않으면는 관리자 권한을 필요로하지 않는 경우 더 나은 대안이 가능성이 있습니다 권한 레벨은 절대적으로 필요하거나 필요합니다. Google을 사용하여 이러한 대안을 조사 할 수 있습니다. 별도의 프로세스에서 UAC 권한 상승을 요청하고 사용자가 명시 적으로 요청할 때 성능 카운터를 실행하는 프로세스가 포함됩니다.

관련 문제