Microsoft MVP성태의 닷넷 이야기
웹: 28. IE 11로 바꾼 후 발생하는 문제 정리 [링크 복사], [링크+제목 복사],
조회: 60051
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 3개 있습니다.)

IE 11로 바꾼 후 발생하는 문제 정리

윈도우 8.1에 기본 설치되는 Internet Explorer 11로 발생하는 문제들을 정리해 볼까 합니다. ^^


1. 기본적으로 활성화 된 "향상된 보호 모드 사용(Enable Enhanced Protected Mode)"

Internet Explorer 10에서도 "향상된 보호 모드 사용" 옵션이 제공되었는데요. 11로 와서는 이 옵션의 역할이 조금 바뀌었습니다. 다행스럽게도 이 옵션이 켜져도 64비트로 IE가 실행되지 않습니다. (실은, 이 기능이 별도로 "향상된 보호 모드를 위해 64비트 프로세스 사용(Enable 64-bit processes for Enhanced Protected Mode)" 옵션으로 분리되었습니다. 물론, 이 옵션은 기본적으로 꺼져 있기 때문에 IE 11에서는 32비트로 동작하게 바뀐 것입니다.)

이로 인해 기존의 거의 모든 ActiveX들이 활성화되지 않았던 IE 10의 "향상된 보호 모드 사용" 환경과는 달리, IE 11에서는 일부 ActiveX들이 활성화되지 않는 문제가 발생합니다. 예를 들어, YBMSISA.com을 방문하면 다음과 같이 하단에 "향상된 보호 모드" 옵션으로 인해 ActiveX가 활성화되지 않는다고 나옵니다.

ie11_etc_1.png

"
이 웹 페이지에서 Internet Explorer 보안 강화 기능과 호환되지 않는 '...'을(를) 실행하려고 합니다. 이 사이트를 신뢰하는 경우 이 사이트에 대해 향상된 보호 모드를 사용하지 않도록 설정하여 컨트롤을 실행할 수 있습니다.

'...' isn't compatible with Internet Explorer's enhanced security features and has been disabled
"


이를 위한 가장 나은 해결책은 ActiveX 제작사 측에서 EPM(Enhanced Protected Mode)에 호환되도록 ActiveX를 제작해서 배포하는 방법입니다. 그렇게 되면 사용자는 IE 11 기본 설치 상태에서 아무런 장애 없이 웹 사이트를 사용할 수 있습니다.

물론, 이런 경우가 많지는 않을 것이기 때문에 2차적으로는 사용자 측에서 "향상된 보호 모드 사용" 옵션을 꺼두는 수밖에 없습니다. (끄는 방법에 대해서는 "64비트 윈도우에서 Internet Explorer 10이 항상 64비트로만 실행된다면?" 글의 3번에서 설명했으므로 생략합니다.)

참고로, EPM 호환 가능한 ActiveX를 만드는 방법에 대해서는 다음의 글에 설명되어 있습니다.

Understanding Enhanced Protected Mode - Add-ons in Enhanced Protected Mode
; http://blogs.msdn.com/b/ieinternals/archive/2012/03/23/understanding-ie10-enhanced-protected-mode-network-security-addons-cookies-metro-desktop.aspx

Enhanced Protected Mode add-on compatibility
; https://learn.microsoft.com/en-us/troubleshoot/browsers/enhanced-protected-mode-add-on-compatibility


2. 알패스가 동작하지 않는 문제

이 문제는 결국 "1. 기본적으로 활성화 된 향상된 보호 모드 사용(Enable Enhanced Protected Mode)"으로 인해 발생하는 문제입니다. 윈도우 8.1/2012 R2에서도 역시 예전 버전의 알패스가 동작합니다. 물론, 이를 위해서는 다음과 같은 식의 설정이 필요합니다.

Windows 7 64비트 + IE 8에서의 알패스 "자동 채움" 동작시키기
; https://www.sysnet.pe.kr/0/0/316

하지만, 이렇게 했는데도 IE 11에서는 향상된 보호 모드 사용 옵션이 켜져 있으면 다음과 같은 메시지와 함께 동작하지 않습니다.

ie11_etc_2.png

"
'IEEvents Class' from 'ESTsoft Corp.' isn't compatible with Internet Explorer's enhanced security features and has been disabled
"


따라서 알패스를 동작시키려면 향상된 보호 모드 사용 옵션을 꺼야 합니다.


3. 웹 폰트가 동작하지 않는 문제

이 원인은 공식적인 문서를 확인하지 못해서 뭐라고 ^^ 할 말이 없는데요. 제 예상으로는 웹 폰트가 HTML5 웹 사이트가 아니면 동작을 안하도록 설정된 것이 아닌가 추측해 보는 정도입니다.

이에 대한 사례로 다음의 글을 썼는데요.

IE 11 - YBM Sisa.com에서 검색된 영단어의 발음 기호가 안 나오는 문제
; https://www.sysnet.pe.kr/2/0/1495

현재로서는 해당 문제가 발생하는 사이트에 대해서는 "호환성 보기 설정(Compatibility View settings)"을 설정하는 수밖에는 없습니다. 물론, 가장 매끄러운 해결 방법은 해당 웹 사이트가 HTML5로 변경해 주는 것이 더 좋겠지만. ^^


4. 네이버 블로그에서 이미지 첨부가 안되는 문제

"네이버 포토업로더" 화면에서 파일을 선택해도 다음과 같이 아무런 변경 사항이 발생하지 않습니다. (재미있는 것은, 가끔 가다 한 번씩 동작을 합니다. ^^)

ie11_etc_3.png

포토업로더가 flash로 구현된 것이라서... 원인 파악을 해볼 수가 없는데요. naver.com을 신뢰할 수 있는 웹 사이트로 등록하는 수밖에 없었습니다.

ie11_etc_4.png




다행히 현재까지 제가 겪은 바로는 이 정도의 호환성 문제만 발견되었는데... 아마도 역대 IE 릴리스 중에서 쓸 것이 가장 적은 경우가 아니었나 평가해 봅니다. ^^




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 7/20/2023]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 106  107  108  109  [110]  111  112  113  114  115  116  117  118  119  120  ...
NoWriterDateCnt.TitleFile(s)
11174정성태4/3/201719404VC++: 116. Visual Studio 단위 테스트 - Failed to set up the execution context to run the test
11173정성태4/3/201722969VC++: 115. Visual Studio에서 C++ DLL을 대상으로 단위 테스트할 때 비정상 종료한다면?파일 다운로드1
11172정성태4/3/201722102.NET Framework: 651. C# - 특정 EXE 프로세스를 종료시킨 EXE를 찾아내는 방법파일 다운로드1
11171정성태3/31/201718811VS.NET IDE: 114. Visual Studio 디버깅 경고 창 - You are debugging a Release build of ...
11170정성태3/31/201720717.NET Framework: 650. C# - CachedAnonymousMethodDelegate 유형의 코드 생성
11169정성태3/30/201720554VC++: 114. C++ vtable의 가상 함수 호출 가로채기파일 다운로드1
11168정성태3/29/201723888VC++: 113. C++ 클래스 상속 관계의 vtable 생성 과정
11167정성태3/28/201724193VC++: 112. C++의 가상 함수 테이블 (vtable)은 언제 생성될까요? [2]
11166정성태3/28/201718432오류 유형: 382. System.Data.SqlClient.SqlException - Arithmetic overflow error converting IDENTITY to data type int.
11165정성태3/27/201721713오류 유형: 381. Visual C++에서 min, max 함수를 사용한 경우 C2589, C2059 컴파일 오류 발생
11164정성태3/27/201730033VC++: 111. C++ 클래스의 상속에 따른 메모리 구조 [2]파일 다운로드1
11163정성태3/25/201719815VC++: 110. CreateThread Win32 API에 C++ 클래스의 멤버 함수를 전달하는 방법파일 다운로드1
11162정성태3/24/201724053오류 유형: 380. Visual Studio 빌드 실패 - The OutputPath property is not set for project
11161정성태3/24/201716767오류 유형: 379. ICOMAdminCatalog.GetCollection 호출 시 0x80070422 예외 발생
11160정성태3/23/201721689.NET Framework: 649. ASP.NET - Server cannot append header after HTTP headers have been sent. (HTTP 헤더를 보낸 후에는 서버에서 헤더를 추가할 수 없습니다.)파일 다운로드1
11159정성태3/23/201718975Windows: 136. Memory-mapped File은 Private Bytes 크기에 포함될까요?파일 다운로드1
11158정성태3/22/201718620디버깅 기술: 85. Windbg - SOS 디버깅 사례 System.NullReferenceException 예외 추적
11157정성태3/22/201721864.NET Framework: 648. Dictionary<TKey, TValue>를 deep copy하는 방법파일 다운로드1
11156정성태3/21/201722491.NET Framework: 647. 닷넷(C#) 코드로 인증서 요청 코드 만드는 방법파일 다운로드1
11155정성태3/21/201722701.NET Framework: 646. SslStream의 CipherAlgorithm 선택이 가능할까요?파일 다운로드1
11154정성태3/5/201729705VC++: 109. DLL에서 STL 객체를 인자/반환값으로 갖는 함수를 제공할 때, 그 함수를 외부에서 사용하는 경우 비정상 종료한다면? [2]파일 다운로드1
11153정성태3/5/201729084VC++: 108. DLL에 정의된 C++ template 클래스의 복사 생성자 문제파일 다운로드1
11152정성태3/4/201722762VC++: 107. VirtualAlloc, HeapAlloc, GlobalAlloc, LocalAlloc, malloc, new의 차이점파일 다운로드1
11151정성태3/3/201723353VC++: 106. DLL 개발자가 주의해야 할 Secure CRT 함수 사용 [1]파일 다운로드1
11150정성태2/21/201719301.NET Framework: 645. Visual Studio Fakes 기능에서 Shim... 클래스가 생성되지 않는 경우 [5]
11149정성태2/21/201722972오류 유형: 378. A 64-bit test cannot run in a 32-bit process. Specify platform as X64 to force test run in X64 mode on X64 machine.
... 106  107  108  109  [110]  111  112  113  114  115  116  117  118  119  120  ...