'MSXML'에 해당되는 글 1건
- 2011.01.28 Install msxml4 Vista by Internet Explorer
2011. 1. 28. 18:45
Install msxml4 Vista by Internet Explorer
2011. 1. 28. 18:45 in text/installer
msxml4.cab 은 Vista 이상의 OS에서 정상 적으로 설치되지 않는다. MS의 공식적인 자료는 없으나 몇몇 blog 에서 해당 현상의 글을 보았다.
실제 테스트를 해보면 IE가 권리자 권한 인경우 정상동작하나 그렇지 않은 경우 msxml4.dll 이 system32로 복사가 되지 않았다.
msxml6 부터는 cab 파일을 제공하지 않았고, 해당 파일을 cab으로 묶어 테스트 해 보았다. msxml6도 정상 동작하지 않는다.
이 부분을 해결하기 위해서 다른 방법을 사용했다.
1. IE의 object tag에 EXE를 연결
<body>
<object id="MSXML4"
classid="clsid:88d969c0-f192-11d4-a65f-0040963251e5"
codebase="./msxml4.exe"
STYLE="display: none">
</object>
</body>
위 처럼 작성하면 해당 CLSID 가 존재하지 않는 경우 codebase의 exe를 다운받아 실행한다.
2. NSIS 로 실행파일 제작
RequestExecutionLevel admin
; Put file there
File msxml.msi
ExecWait 'msiexec /i $INSTDIR\msxml.msi /passive' // 자동으로 진행되도록
Delete $INSTDIR\msxml.msi
SectionEnd ; end the section
NSIS 로 제작한 이유는 admin 권한 획득을 위한 부분 과 msi 를 passive 모드로 실행하기 위함이다.