본문 바로가기

IWebBrowser22

Windows Vista IE8(베타)의 LCIE IE8부터 새롭게 Loosely-Coupled IE (LCIE)라는 것이 기능이 생겼다. IE7에서는 보호 모드 때문에 IE를 실행하면 IE가 바로 실행되는 것이 아니라 ieuser.exe라는 프로세스가 생성되고 낮은 무결성 상태의 iexplore.exe를 실행하게 된다. 아래 그림처럼. 그래서 http://still.tistory.com/10 에서 처럼 프로그램에서 IE를 실행할 때 IWebBrowser2를 얻으려면 약간의 수고가 필요하다. 그런데 이게 IE8에서 아래처럼 바뀐다고 한다. 즉, iexplore.exe 프로세스가 탭과 Extensions 별로 각각의 프로세스를 생성해서 동작하는 형태이다. 덕분에 위의 이상한 방법이 필요 없어졌다. 그냥 CoCreateInstance()로 생성하면 된다. .. 2008. 11. 19.
Windos Vista에서 IE7 실행 및 IWebBrowser2 인터페이스 얻기 Windows Vista에서 IWebBrowser2를 CoCreateInstance로 생성하는 경우 몇가지 제약 사항들이 있다. 먼저 Internet Explorer을 Visible하게 하기 전에 먼저 Navigate를 실행해야 한다. 다음으로 Navigate하고자 하는 URL이 Trusted Domain이 아니면 실행하는 어플리케이션이 관리자 권한으로 실행 중이거나 보호 모드가 설정된 IE7을 실행해야 한다. 그렇지 않으면 IE7은 보호 모드가 설정된 IE 프로세스를 다시 생성하고 기존 프로세스는 종료된다. 문제는 CoCreateInstance로는 보호 모드가 설정된 IE 프로세스를 생성할 수가 없다는 점이다. 이를 해결하기 위해서는 보호 모드가 설정된 IE7에 대한 IWebBrowser2 인터페이스를.. 2007. 2. 23.