2009-09-10 10 views
3

우리는 많은 다른 설치 프로그램과 마찬가지로 관리자 권한으로 다운로드하여 실행해야하는 응용 프로그램을위한 설치 프로그램이 있습니다. 그러나 설치 관리자의 이름은 "setup.exe"가 아니므로 Windows가 자동으로 권한 상승이 필요한 것으로 인식하지는 않습니다.Windows 설치 프로그램의 매니페스트는 어떻게 만듭니 까?

사물을 제대로 올리려면 설치 관리자 이름을 변경하면 솔직하게 꽤 혼란 스럽습니다. This article은 UAC 및 권한 상승에 대해 많이 이야기하고 있으며 매니페스트를 사용하여 승인이 필요한 항목을 만들 수 있다고 말합니다.

그래서 설치 프로그램의 매니페스트를 만들고 싶습니다. 그러나 어떻게 매니페스트가 존재하는지 확인해야합니까? 사용자가 our_application_v13.exe를 다운로드하면 어떻게하면 매니페스트를 가져올 수 있습니까? AFAIK 매니페스트는이 경우 "our_application_v13.exe.manifest"라는 파일이어야합니다.

웹 사이트에서 파일을 다운로드하는 중임에 따라 매니페스트가 있는지 확인하려면 어떻게해야합니까? 실행 파일에 어떤 식 으로든 그것을 빌드 할 수 있습니까? 그렇지 않으면 실행 파일에 고도가 필요하다고 표시 할 수 있습니까? 수 백 년 전 우리가 변경할 수없는 설치 도구를 사용하고 있으므로 이와 관련된 기능이 없습니다.

감사합니다.

답변

3

설치 도구를 사용하여 생성 된 EXE 파일의 리소스를 변경/연결/편집 할 수있는 경우 매니페스트 파일을 리소스 유형 24 (Windows 헤더에 RT_MANIFEST) 및 리소스 ID

설치 프로그램 도구에 자원을 삽입 할 수있는 기본 제공 도구가없는 경우 리소스를 삽입하기 위해 install.exe 파일을 사후 처리하는 도구를 작성해야 할 수 있습니다. Windows API BeginUpdateResouce과 EndUpdateResource를 찾으십시오. 그들은 몇 가지 제약이 있습니다. EXE에 리소스 파일이 전혀 포함되어 있지 않은 경우 작동하지 않는 경향이 있지만, 대부분의 설치 도구에서 생성 된 EXE 파일에는 최소한 버전 정보 리소스가 포함되어 있습니다.

또한 설치 프로그램이 디지털 서명 된 경우 매니페스트 리소스를 삽입 한 후에 수행해야합니다.


또한, mt.exe는 플랫폼 SDK에 포함 된 비주얼 스튜디오의 대부분의 버전은 포함 추출물 및 매니페스트 자원을 병합하는 옵션이 있습니다.

1

매니페스트는 응용 프로그램의 네이티브 리소스 섹션 (EXE 내부)에있을 수도 있습니다.

1

Heaventools Software의 Resource Tuner Console입니다.

Resource Tuner Console은 개발자가 설치 exe 파일의 후 처리를 자동화하고 매니페스트 리소스를 삽입 할 수있게 해주는 명령 줄 도구입니다. 더 자세한 내용은 구체적으로 추가 응용 프로그램 매니페스트 페이지를 참조하십시오 :

관련 문제