본문 바로가기

IE7, IE8의 환장할 에러. MSHTML.DLL

728x90
반응형


IE8을 깔았다.
정확히 말하자면 4년만에 컴퓨터를 포멧 했다.
더 정확히, 컴퓨터를 포멧한게 아니라 HDD C-드라이브를 포멧했다.
항상 레지스트리, 임시파일, 인터넷 pnp 객체 등을 수시로 정리하면서 4년을 버텼다.
포멧의 귀찮음을 너무 잘 알고 있기 때문에 가능하면 포멧 없이 버티고 싶었다.

포멧을 결심하게 된 결정적인 이유는 IE(인터넷 익스플로러) 때문이다.
무엇이 잘 못 됐는지 부팅 후 3분 이상은 기다려야 IE가 실행 된다.
실행되고 끝이 아니라 뭐 하나 다운 받으려면 세월이다.
마감이 2주나 늦은 뒤라 심하게 갈등하다 결국 포멧을 결심했다.

IE8을 새로 설치 했다.
7버전을 쓰다 8 나온지 시간이 좀 지났으니 패치가 어느정도 됐을까 싶어 최신 버전 써보자고 깔았다.
두어달 전까지만 해도 IE6을 고집했었으나 대세는 IE7이나 IE8이였다.
바다를 가려면 큰 물 줄기에 묻어가는게 제일 쉽다는 평소 나의 생각을 실천 했다.
IE8로 업그레이드 한 뒤로 간혹 에러가 있었으나 포멧하고 다시 설치한 뒤로는 다음 카페에서 배경 음악만 나와도 에러가 난다.
옥션은 들어가지도 못한다.
당체 인터넷을 할 수 없을만큼 브라우저에 뭔가 뜨기만 하면 바로 에러가 뜬다.
반면 파이어폭스는 전혀 문제가 없다.

인터넷을 뒤져 봤다.
에러 메시지를 보니 mshtml.dll에서 생기는 에러였다.
많은 사람들이 이 파일 때문에 고생을 하고 있는 거 같다.
반가운 마음에 이것저것 블로그들을 살펴보니 해결책으로 나온 것들이 많다.
그런데 블로그에 올라와 있는 해결책들이 마음에 확! 와닿지 않는다.
jscript가 최신 버전이 아니라서 그렇다느니 레지스트리를 수정 해야 한다느니 심지어 한글2007과 충돌이 있다는 얘기들이 많다.
많은 해결책 중에서 유독 mshtml.dll을 새로 복사 해 넣으라는 방법이 마음에 끌렸다.
mshtml.dll은 c:\window/system32안에 들어 있다.
탐색기로 찾아 들어가 삭제를 시도하면 지워지지 않는다.
이 작업(?)을 하기 위해서는 안전모드에서 해야 한다는 걸 염두 해야 한다.
여러 블로그나 게시판에 공개된 정체불명의 mshtml.dll파일은 일단 피하자.
http://www.microsoft.com/korea/ie8
여기에 가면 IE8 설치 파일을 받을 수 있다.
에러가 심한경우 접근이 여의치 않을 수 있으니 그럴 땐 퐈이어폭스를 이용하면 좋다.

이제 집중해보자.
IE8설치 파일을 받았다면 실행 해 보자.
c:\7ge8weg88w0976f 이렇게 된 폴더를 생성하고 압축을 풀기 시작한다.
(알집으로 압축이 풀리까 해서 시도를 해봤는데 안 풀린다. ㅡㅡ^)
대화상자에서 설치 할거냐고 묻는다면 아무것도 클릭하지 말고 일단 스톱!!
그 상태에서 탐색기로 c:\7ge8weg88w0976f 이 폴더를 찾아보자.
안에 IE8을 설치 하기 위한 파일들이 있다.
mshtml.dll 파일만 따로 바탕화면에 복사 두자.
그 다음 안전모드로 리붓!!
mshtml.dll 파일을 c:\window\system32안에 덮어 쓰기로 복사 하자.
다시 리붓!!
그래도 계속 에러가 생길 땐 안전모드로 부팅 할 때 안전모드 컨멘드 사용모드(CMD 사용)로 부팅해서 c:\window\system32안에 mshtml.dll을 지우자.
c:\window\system32>del mshtml.dll
지우고 다시 안전모드로 리붓해서 바탕화면에 모셔 놨던 파일을 다시 복사하자.
이렇게 했다면 어지간히 되지 않았을까 싶다.

위의 방법으로 안된다면 IE를 다시 설치하는거 밖에 도리 없다.
IE7에서 IE8로 업그레이드 한거라면 IE8을 제거 할 수 있다.
제거는 제어판->프로그램 추가/삭제에서 할 수 있다. (window internet explorer 8 제거)
그러면 자동으로 IE7로 다운그레이드 된다.
IE7을 써도 되고 IE8을 쓰고 싶다면 아까 다운받았던 IE8설치 파일을 실행시켜 재설치를 해보자.
만약 XP설치 후 IE7을 건너뛰고 IE8을 바로 설치 했다면 IE8은 제거 할 수 없다.
이런 경우는 삭제 하지 않고도 재설치가 가능하다.
재설치를 해도 에러가 계속 된다면 삭제하고 다시 재설치 해보자.
언제까지?
에러 안나올 때까지.

IE8이 아직 완성도가 낮아서 에러가 어쩌구저쩌구 말들이 많다.
이런식이면 완벽한 MS계열 소프트웨어는 없다.
사람들은 윈도우 자체에도 불만이 많다.
그런데 더 많은 사람들이 사소한 오류나 불편함은 자신도 모르게 어느정도 감수하며 잘 사용하고 있다.
문제는 내 안에서 시작하는 것이다.
마음을 여유롭게 갖고 찬찬히 문제 해결 의지를 갖는게 좋다.

첨부 파일은 위의 방법으로 복사 해온 mshtml.dll 파일이다.
이걸 system32 폴더 안에 덮어 쓰기하자.
안전모드에서...

※ 버전 확인
mshtml.dll 파일에서 오른쪽 마우스를 클릭하면 단축 메뉴가 뜬다.
맨 아래쪽 "속성"을 실행하면 대화상자에서 두번째 텝"버전"을 꼭 확인 해보자.
IE버전과 mshtml.dll 파일의 버전이 같아야 한다.
728x90
반응형