2008-09-18 3 views
3

방금 ​​VS 2008을 사용하여 VS C++ 6.0 프로그램을 만들었습니다. 응용 프로그램을 실행하거나 디버깅하려고하면 Vista에서 권한을 요청합니다. 이것을 일으키는 프로그램이 어떻게 만들어 졌는가? 프로그램이 빌드되어 C : \ Dev 하위 폴더에서 실행됩니다.내 프로그램이 Vista에서 실행 권한을 요청하는 이유는 무엇입니까?

This response이 문제의 해결책으로는 나에게 해 롭습니다.

+0

관리자로 VS를 실행하고 있습니까? 나는 그것이 필요하다고 믿는다 – rjrapson

+0

VS 2008 SP1이이 문제를 해결하고 로딩 할 때 권한을 묻는 메시지가 잘못 표시 될 수 있다고 생각했지만 잘못된 것일 수 있습니다. – typemismatch

+0

예 관리자로 실행 중입니다. VS 2005가 문제였습니다. 2008 년 고정 사물로 전환. – AlanKley

답변

3

가능성 1 :

귀하의 프로그램 매니페스트

가능성이에서 관리자 권한을 필요로 표시되어

:

여러분의 프로그램이 SETUP.EXE 또는 INSTALL.EXE라고

- 같은 프로그램 이름 항상 원인 관리자 권한이 필요합니다

이 체크가 표시되는 이유 및 다른 가능성에 대한 자세한 설명은 Getting to Know User Account Control Technet article

1

MVP는 코드 및 프로젝트를 사용자 폴더 (예 : c : \ users \ yourname \ appdata 또는 해당 경로 아래의 항목)에서 실행하는 것에 대해 이야기했습니다.

이 문제를 해결하기 위해 UAC를 비활성화하지 마십시오. UAC가 꺼져 있지 않으면 응용 프로그램이 다른 컴퓨터에서 실행되지 않습니다. 아주 나쁜 습관입니다. 완벽한 세상에서 귀하의 응용 프로그램은 사용자로부터 승격 된 권한을 요청해야합니다.

0

관리자가 아닌 경우 C : \ Dev에서 프로그램을 실행할 수있는 권한이없는 것 같습니다.

1

수마 감사합니다. 당신은 응답이 아직 최고이며 해결책을 찾는데 도움이되었습니다. 나는 그 원인이 당신의 첫 번째 제안에 의해 설명된다고 결정했습니다. 파일 이름을 'setup'이라는 단어가 포함되지 않은 이름으로 변경하면 도움이되지 않았습니다.

나는 VS 2005 및 VS 2008을 모두 설치했고 이전 .dsw 파일을 열려고 시도했을 때 2005 년이었습니다. 프로젝트를 업그레이드하기 위해 제공되었고, 2005 년에는 "assembly"라는 태그를 사용하여 한 줄로 된 매니페스트를 만들었습니다 .VS 2008을 사용하여 프로젝트를 업그레이드하고 나면보다 광범위한 매니페스트 파일이 생성되었습니다. .

<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"> 
    <security> 
     <requestedPrivileges> 
     <requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel> 
     </requestedPrivileges> 
    </security> 

: 매니페스트 도구 ... 입력 및 출력을 확인하여 내 프로그램은 ... 삽입 매니페스트 설정이 새 매니페스트는 다음과 같은 데이터를 포함
관련 문제