2가지 모드의 Internet Explorer 10과 ActiveX
윈도우 8에 소개된 (Platform Preview 3 버전에 해당하는) IE 10은 2가지 모드로 구동이 되는 특징이 있습니다. 바로 "메트로 스타일" 유형(Metro style app)과, 기존 Win32 응용 프로그램 유형(Desktop app)이 그것인데요.
기존 유형의 것은 이제까지 우리가 사용해 온 UI이기 때문에 생략하고, "메트로 스타일의 IE"는 다음과 같은 식으로 실행이 됩니다.
보시는 것처럼, 대부분의 IE 메뉴가 생략되며 태블릿 PC에서 사용할 정도의 최소화 된 하단의 버튼들과 상단의 "탭"들이 제공됩니다. (위의 화면은 마우스 오른쪽 버튼을 눌러 상단/하단 영역이 보이도록 한 것입니다.)
먼저, 데스크톱 유형의 IE 10을 살펴볼까요? ^^
사실 별로 바뀐 것은 없는데, 뚜렷하게 하나 바뀐 점이 있다면, 이전보다 더 적극적으로 64 비트 모듈을 사용하고 있다는 점입니다. 예를 들어, 기존의 IE 9에서는 iexplorer.exe 프로세스는 모두 32비트로 실행이 되었는데, IE 10에 와서는 x64 운영체제의 경우 기본적으로 LCIE의 "IE Frame"에 해당하는 프로세스가 64비트로 실행되도록 바뀌었습니다.
참고로, LCIE에 대해서는 다음의 글을 읽어보십시오.
IE 8: 프로세스와 윈도우의 관계 - LCIE
; https://www.sysnet.pe.kr/2/0/666
금일 진행되었던 마이크로소프트 IE 8 행사의 ActiveX 세션 PPT
; https://www.sysnet.pe.kr/2/0/673
IE 8 - TabProcGrowth 레지스트리 설정
; https://www.sysnet.pe.kr/2/0/686
하지만, 여전히 자식 프로세스는 32비트 모드이기 때문에 기존의 ActiveX 플러그인 모듈 지원은 정상적으로 되고 있습니다. 예를 들어, '알패스'까지도 정상적으로 구동되는 것을 확인했습니다. 물론, 아래의 방식을 사용해야 합니다.
Windows 7 64비트 + IE 8에서의 알패스 "자동 채움" 동작시키기
; https://www.sysnet.pe.kr/0/0/316
이 외에, 또 한가지의 64비트에 대한 지원이 눈에 띄는데요. 전에는 64비트 IE를 실행하려면 '시작' 메뉴에서 별도로 구분되어 있는 "Internet Explorer (64-bit)" 항목을 찾아들어가서 실행해야 했었는데, 이제는 32비트 용 아이콘으로 실행해도 64비트 IE가 실행될 수 있도록 다음과 같이 "Enable 64-bit Mode" 설정이 지원되고 있습니다.
이렇게 설정하고 IE를 다시 실행하면 LCIE 관계의 모든 iexplore.exe 프로세스가 64비트로 올라오는 것을 확인할 수 있습니다.
참고로, 이렇게 64비트로 실행하는 경우 가장 문제가 되는 것이 "Flash"인데요. 다행히 현재 Adobe 측에서 RC 버전의 64비트용 Flash Player를 제공해 주고 있기 때문에 이를 설치하면 정상적으로 플래시가 들어있는 사이트를 문제없이 이용할 수 있습니다.
Download Flash Player 11 Release Candidate for Desktops
; http://labs.adobe.com/downloads/flashplayer11.html
말할 필요도 없지만, 64비트 모듈을 제공하지 않는 (알패스를 포함해서) 기타 거의 대다수의 ActiveX들은 64비트 IE에서 동작하지 않습니다.
이제 메트로 스타일의 IE 10을 살펴볼까요?
이미 마이크로소프트의 블로그에서도 공개되어 알려진 것처럼 메트로 스타일의 IE 10에서는 더 이상 ActiveX를 지원하지 않습니다.
Metro style browsing and plug-in free HTML5
; http://blogs.msdn.com/b/b8/archive/2011/09/14/metro-style-browsing-and-plug-in-free-html5.aspx
게다가 64비트 운영체제에서는 '메트로 스타일의 IE'는 기본적으로 64비트로만 실행됩니다.
어차피 ActiveX가 지원되지 않도록 만든 이상, 64비트 IE에 가장 큰 걸림돌이 없어진 것이므로 충분히 이해가 되는 수준의 변화입니다. (Adobe가 애써 만든 64비트 Flash ActiveX 모듈은 결국 사장될지도 모르겠습니다.)
일반 '메트로 스타일'의 응용 프로그램과 다소 다른 점이 있다면 "Integrity" 수준이 "AppContainer"를 따르지 않고 LCIE의 전형적인 Medium/Low 값을 따르고 있습니다. iexplore.exe의 경로는 "데스크톱 App 유형의 IE"와 동일하지만, 명령행에서 "-ServerName" 옵션값이 추가된 정도의 특이점이 있습니다.
Path: C:\Program Files\Internet Explorer\iexplore.exe
Command line: "C:\Program Files\Internet Explorer\iexplore.exe" -ServerName:DefaultBrowserServer
결국 메트로 스타일의 IE 10이라고 해서 "데스크톱 App 유형의 IE"와 비교해서 특별하게 다른 점이 있는 것은 아니기 때문에 ActiveX가 막히게 된 것은 순전히 정책적인 결정에 의해서 그렇게 된 것 같습니다.
어쨌든, iPad를 사용하면서도 느낀 것이지만 알패스와 같은 류의 프로그램이 안되어 불편함이 따르는 것은 감수해야 할 것 같습니다. ^^
[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]