2009-07-31 3 views
2

MFC 앱에서 "Microsoft 웹 브라우저"ActiveX 컨트롤을 사용하고 싶습니다. 그러나 기존의 것들과 그다지 재미 있지 않은 것들을 지원하기 위해서는 IE6이 필요합니다. 그러나 배포 될 시스템에는 IE7 또는 IE8이 설치되어있을 수 있습니다.MFC로 IE6 포함하기

저는 C++과 MFC 주위에있는 길을 알고 있지만 COM/ActiveX 놈은별로 없습니다. 나는 지난 며칠 동안 DLL 리다이렉션과 SxS DLL에 대해 읽었으며 놀아 왔지만 실제로는 그렇지 않다. MSDN은 SxS가 시스템 보호 DLL이나 OCX에서 작동하지 않는다고 언급했다. 파일).

IE 배포 키트 빌더를 찾았으나 DLL 리디렉션과 함께 사용할 수 있기를 기대했지만이 시점에서는 거의 운이 없었습니다. 아무도 도와 줄 수 있다면 정말 감사 할 것입니다.

감사합니다.

나단

답변

1

가 IE의 여러 버전이 공존 할 수 있도록 Windows XP에서 일을 해킹 것 "Multiple IE"설치로 사용됩니다. 페이지 메모에 표시된 것처럼 잠시 중단되었습니다.

여러 개의 IE가 더 이상 유지 관리되지 않으며 계속 유지 관리 할 계획이 없습니다.

전술은 분명히 임의의 IE 충돌을 일으키고 Windows XP에서만 작동하며 Windows 업데이트에 의해 (적어도 한 번) 손상되었습니다.


대신 함께 유사한 솔루션 해킹 시도의

(매우 부서지기 쉬운 것으로 나타나고 가능성이 최신 보안 수정과 패치 계속 통증이있을 것이다), 완전히 다른 접근 방법을 고려하는 것이 더 쉬울 수 있습니다 문제에 :

는 원인 수정 :

  • 수정/기본 레거시 코드를 업그레이드합니다. 좀 더 최근의 표준 기반 브라우저와 좋은 보너스로 호환성을 얻을 수 있습니다. (틀림없이, 이것은 때때로 가능한 접근하지 않습니다.)

환경 제어 :

  • 가 IE6에서 Windows XP를 실행하는 가상 머신을 설정합니다. VM을 사용하면 안정적이고 테스트 된 구성에서 필요한 환경을 보장 할 수 있습니다. 유용 할 수있는 배포/통합 도구가 있습니다 (사용자가 응용 프로그램이 완전히 별도의 Windows XP 인스턴스에서 실행되고 있음을 반드시 알 필요는 없습니다).

이동 미친하지만, (약간) 유지 보수성 * : 당신이 기본 레거시 물건을 고정 할 수없는 경우

  • , 아마 그다지 변경되지 않습니다. IE7/IE8과의 호환성을 보장하기 위해 실제로 수정하고 패치하는 방법을 알아보십시오. (즉, 스크립트/CSS/페이지 콘텐츠/형식/등을 편집하여 문제를 해결 한 후 브라우저 엔진이 렌더링하기 전에 문제를 해결하십시오.)

** (협력 IE의 여러 버전을 얻으려고 노력보다.) *

사람들은 단지 아이디어가 있지만 잘하면 그들이 뭔가 유용한 영감을 도움이됩니다. 행운을 빕니다.

+0

응답 해 주셔서 감사합니다. 나는 이미 여러 개의 IE로 놀았지만 Vista에서는 전혀 작동하지 않는다고 우려하고 있습니다. 어쩌면 그것은 DLL 상호 운용성 이외의 다른 것이기를 바랬지 만 희망적인 생각일지도 모릅니다. ;) 불행히도 문제를 해결하기 위해 기존 자료에 액세스 할 수 없기 때문에 솔루션 A는 불가능합니다. VM은 또한 레거시 제품이 얼마나 자주 사용되는지, 그리고 레거시 제품을 사용하는 사람이 주어진다면 실용적이지 않습니다. 세 번째 옵션은 유효한 포인트입니다. 가장 쉬운 방법이라면 우스꽝스럽게 보입니다. ;) 그럼에도 불구하고 귀하의 회신에 감사드립니다! – Nathan

1

웹 브라우저 ActiveX 컨트롤은 Quirks 모드에서 이전 IE5 (!) 렌더링을 사용합니다. (자세한 내용은 IEBlog 참조 - 단점/표준 구별이 IE [6-8]에 적용됨) "legacy stuff"에 대해 언급했는데 그다지 유효하지 않은 페이지를 가정하고 따라서 Quirks 모드를 가정합니다.

의미 : 임베디드 컨트롤은 표준을 준수하지 않는 페이지 (대부분의 레거시 프로그램은 지원하지 않음)의 경우 Internet Explorer 8에서도 이전 IE5 Quirks 모드 렌더링을 사용합니다. 코드를 테스트하려면 MS Internet Explorer Application Compatibility VPC Images - Virtual PC (맥주와 같이 무료) 용 디스크 이미지 세트를 각각 IE6,7,8이 설치된 상태에서 사용할 수 있습니다.

저는 레거시 응용 프로그램을위한 새로운 기능을 개발하고 있으며 3 가지 브라우저는 모두 쿼크 모드 (IE8에 약간의 단조 로움 모드 단점이 있지만 쉽게 해결할 수 있습니다)에서 동일한 방식으로 작동합니다.

+0

안녕하세요, 응답 해 주셔서 감사합니다. 우리의 경우, 애플리케이션이 브라우저 스니핑을 사용하여 IE6 (예 : = 예기치 못한 상황 중 하나)인지 여부를 판단하는 상황이므로 불행히도 실제로는 IE6 일 필요가 있습니다. 그래도 시간을내어 답변 해 주셔서 감사합니다. :) – Nathan