2014-09-04 8 views
0

InstallShield MSI 패키지에 포함하려고하는 타사 실행 파일이 있으며 모든 Windows 버전에서 사용 권한을 설정하고 싶습니다. 특히 관리자로 실행하려면 & Vista를 사용해야합니다.수동 매니페스트 파일

매니페스트 파일의 생성 또는 적절한 구성 구문에 대해서는별로 신경 쓰지 않지만 [appname] .exe.manifest로 수동으로 만들려고 시도했으며 XML에서 <requestedExecutionLevel level=”asInvoker” uiAccess=”false” />을 시도했으며 관리자로 실행되지 않았으며 프로그램이 매니페스트 파일이 동일한 디렉토리에 있는지를 확인하기 위해 컴파일되지 않았기 때문에 또는 그것이 매니페스트 파일에있는 경우 일 수 있습니다. 올바른 구문을 가지고 있지 않습니다.

다른 간단한 아이디어가 있다면, 나는 그것을 듣고 싶습니다!

건배.

+0

[가능한 mt.exe를 사용하여 실행 파일에 매니페스트를 추가하려면 어떻게합니까?] (http://stackoverflow.com/questions/1423492/how-do-i-add-a-manifest-to-an -executable-using-mt-exe) –

+0

이것은 InstallShield가 아닌 EXE에서 발생하는 문제입니다. 중복 질문 솔루션을 사용하여 패키지를 만들기 위해 InstallShield로 보내기 전에 매니페스트를 만들고 임베드 할 수 있는지 확인하십시오. –

답변

1

매니페스트는 사용자가 설명하는대로 파일 이름 옆에 배치 된 실행 파일 (권장) 또는 외부 파일에 포함될 수 있습니다. 임베디드 매니페스트가 있으면 외부 매니페스트가 무시됩니다. EXE를 시작하는 경우 Windows에서이 작업을 수행하며 exe 파일의 코드는 영향을받지 않습니다. DLL 로딩의 경우 사용자가 작성한 코드의 영향을 약간받는 반면 프로세스 경계가 아니기 때문에 UAC 동작을 변경하지 않습니다.

매니페스트를 배치 할 때 관리자로 시작하지 않는 프로그램이 옆에 asInvoker을 요청하면 유효한 매니페스트를 만들었 음을 의미합니다. 즉, 매니페스트가없는 경우 발생하는 상황에 따라 달라집니다. InstallShield에 대해 언급 했으므로 <InstallShield>\Support\setupexe.invoker.manifest과 같은 템플릿 매니페스트 파일을 복사하여 구문이 올바른지 확인할 수 있습니다.

질문을 다시 읽으면 관리자로 시작하기를 원합니다. 이를 위해서는 관리자 권한을 요청해야하므로 asInvoker 대신 requireAdministrator이되어야합니다. 또는 대신 setupexe.admin.manifest을 기반으로 설정해야합니다.

+0

정말 좋은 정보입니다, 감사합니다 마이클! 매니페스트에 대한 MSDN 기사를 다시 읽었으며 "리소스"에 포함시켜야한다고 말했을 때 뭔가를 클릭하여 리소스 편집기를 사용하는 방법을 함께 연결 한 다음 3 단계를 편집 할 수 있다고 생각했습니다. 이 requestedExecutionLevel 수정을 적용하기위한 파티 실행 파일 - 지금까지 문제를 해결하는 것처럼 보입니다! :) – Jester

관련 문제