Computer >> 컴퓨터 >  >> 문제 해결 >> 브라우저

수정 방법: 'ActiveXObject가 정의되지 않았습니다' 오류 해결하기

일부 사용자들은 Internet Explorer에서 거의 모든 페이지를 열 때마다 'ActiveXObject is not defined(ActiveXObject가 정의되지 않았습니다)'라는 스크립트 오류가 발생한다고 보고하고 있습니다. 반면, 특정 웹 페이지에서만 이 문제가 나타난다는 사례도 있습니다.

대부분의 스크립트 오류 메시지는 JavaScript 또는 VBScript 코드에 문제가 있을 때 Internet Explorer(IE)에 의해 표시됩니다. 이러한 오류는 대개 현재 IE로 보고 있는 웹사이트 자체의 문제에서 비롯됩니다. 하지만 드물게는 웹페이지를 로컬로 다운로드하거나 웹페이지 요소를 내려받는 과정에서 오류가 발생해 나타나는 경우도 확인되었습니다.

ActiveX 기술은 Internet Explorer 전용이기 때문에, Microsoft 환경 밖(Chrome, Opera, Firefox 등)에서 ActiveX 객체를 실행하려고 하면 이런 종류의 오류가 발생하는 것은 당연합니다. 만약 Internet Explorer가 아닌 다른 브라우저에서 ActiveXObject is not defined 오류가 발생한다면, 해당 브라우저에서 동일한 기능을 수행하는 대체 객체를 찾아 사용하는 것이 해결책입니다.

반면 Internet Explorer에서 문제가 발생한다면, 다른 사용자들이 성공적으로 활용한 여러 가지 해결 방법이 있습니다(애드온 제거부터 스크립트 디버깅 비활성화까지 다양합니다). 아래에 정리된 방법들을 순서대로 따라 하면서 본인의 상황에 맞는 해결책을 찾아보시기 바랍니다. 그럼 시작해 보겠습니다!

방법 1: 오류 디버깅 및 알림 비활성화

모든 버전의 Internet Explorer에서는 기본적으로 스크립트 디버깅과 알림이 꺼져 있습니다. 이 방법은 문제의 근본 원인을 치료하지는 못하지만, 스크립트 오류 디버깅과 알림을 비활성화하여 ActiveXObject is not defined 오류 팝업이 브라우징을 방해하는 것은 막을 수 있습니다.

방문 중인 웹사이트의 기능에는 영향을 주지 않으면서 ActiveXObject is not defined 오류만 계속 뜨는 경우라면, 아래 가이드를 따라 Internet Explorer 설정에서 스크립트 오류 디버깅과 알림을 끌 수 있습니다.

  1. 선호하는 방법으로 Internet Explorer를 실행합니다.
  2. 도구 버튼(톱니바퀴 아이콘)을 클릭한 후 인터넷 옵션(Internet Options)을 선택합니다.
  3. 인터넷 옵션 창에서 고급(Advanced) 탭으로 이동한 뒤, 스크립트 디버깅 사용 안 함(Internet Explorer)스크립트 디버깅 사용 안 함(기타)에 연결된 체크박스의 선택을 해제합니다.
  4. 적용(Apply) 버튼을 눌러 변경 사항을 저장한 후, 이전에 오류가 발생했던 웹페이지를 다시 불러옵니다. 팝업 오류가 여전히 발생한다면 아래의 다음 방법으로 넘어갑니다.

방법 2: 문제를 일으키는 애드온 제거 또는 비활성화

수많은 사용자 보고에 따르면, ActiveXObject is not defined 오류는 Internet Explorer의 애드온(add-on)에 의해 자주 발생합니다. 일부 사용자들은 원인이 되는 애드온을 찾아낼 때까지 의심되는 애드온을 하나씩 제거하거나 비활성화하는 방식으로 문제를 해결했습니다.

Internet Explorer의 애드온 중 하나가 원인인지 확인하는 가장 깔끔한 방법은 브라우저를 안전 모드(Safe Mode)로 시작하는 것입니다. 안전 모드에서 오류가 더 이상 발생하지 않는다면, 특정 애드온이 ActiveXObject is not defined 오류의 범인이라고 단정할 수 있습니다. Internet Explorer를 안전 모드로 시작하는 방법은 다음과 같습니다.

  1. Windows 키 + R을 눌러 실행(Run) 창을 엽니다. 그런 다음 'cmd'를 입력하고 Enter 키를 눌러 명령 프롬프트(Command Prompt) 창을 엽니다.
  2. 명령 프롬프트 창에 'cd/'를 입력하고 Enter 키를 눌러 C:\ 프롬프트 상태로 만듭니다.
  3. C:\ 프롬프트에서 "C:\Program Files\Internet Explorer\iexplore.exe" -extoff를 입력하거나 붙여넣은 후 Enter 키를 누르면, 애드온 없이 실행되는 안전 모드 Internet Explorer가 열립니다.
  4. 오류가 발생했던 동일한 웹사이트에 접속하거나 동일한 작업을 반복해 봅니다. 안전 모드에서는 오류가 발생하지 않는다면, 분명히 애드온 중 하나가 원인입니다.

실행 중인 애드온 중 하나가 ActiveXObject is not defined 오류의 원인임을 확인했다면, 아래 단계에 따라 애드온을 체계적으로 비활성화하면서 범인을 찾아내시기 바랍니다.

참고: Jive Anywhere IE 애드온이 이 오류를 유발하는 주범으로 사용자들에게 자주 지목되고 있습니다.

  1. Internet Explorer를 열고 도구 아이콘(톱니바퀴)을 클릭한 후 추가 기능 관리(Manage add-ons)를 선택합니다.
  2. 왼쪽 창에서 표시(Show) 항목을 모든 추가 기능(All add-ons)으로 설정하여 설치된 애드온을 하나도 빠짐없이 확인합니다.
  3. 오른쪽 창에서 각 애드온을 마우스 오른쪽 버튼으로 클릭해 사용 안 함(Disable)을 선택하며 하나씩 비활성화하고, 오류에 변화가 있는지 테스트합니다.
    참고: Microsoft에서 배포한 애드온은 대체로 안전하므로 제외해도 좋습니다. 검증되지 않은 애드온부터 먼저 비활성화하면 작업 시간을 크게 줄일 수 있습니다.
  4. 원인이 되는 애드온을 찾아냈다면, 문제와 무관하다고 확인된 나머지 애드온들은 다시 활성화하면 됩니다.

방법 3: 웹사이트 관리자에게 문의

위의 방법들로도 ActiveXObject is not defined 오류를 피할 수 없다면, 사용자 측에서는 절대 고칠 수 없는 웹사이트 내부의 문제일 가능성이 높습니다.

실제로 구버전 IE 간의 호환성 문제로 인해 오류가 발생하며, 이는 웹마스터만이 해결할 수 있다는 사용자 보고도 여럿 있습니다.

오류가 브라우저 문제가 아닌지 확인하려면, 동일한 웹페이지를 다른 브라우저로 열어 같은 현상이 재현되는지 살펴보세요. 어떤 브라우저를 사용하든 문제가 계속된다면, 문제의 원인이 웹사이트 서버 쪽에 있어 사용자가 직접 수정할 방법이 없을 가능성이 매우 높습니다.

이 경우 문제를 해결할 수 있는 유일한 방법은 웹사이트 관리자에게 연락하여 해당 오류에 대한 조사를 요청하는 것입니다.