MS에서 공식적으로 발표한 비스타/IE 호환관련 문서들입니다.

http://www.microsoft.com/korea/windows/compatibility/activex.mspx

MS 웹사이트에 올라온 비스타와 ActiveX에 대한 입장입니다. 국내 금융권에 대한 MS의 입장이 있군요.
128bit SSL을 비롯한 표준화된 인증 체제, 그리고 암호 발생기 등 다양한 보안 솔루션을 국가적 차원에서 열린 자세로 수용하여, 다양한 플랫폼에서 기 구현되고 검증된 인프라를 활용하도록 하는 것이 바람직합니다. 현재 Internet Explorer는 세계 표준적 보안 기능을 내장하고 있고, 세계 각국의 은행들은 브라우저 내장의 보안 기능을 활용하고 있습니다.
정부와 MS, 보안업체와 개발업체들의 앞으로의 행보가 궁금해지네요.

Internet Explorer 7.0 호환성 백서 (Word 문서, 1.92MB)

상당히 도움이 될만한 문서입니다. 2006년말에 나왔습니다. 다만, "Windows Vista IE7 에서 ActiveX 컨트롤 개발 방법론"라는 백서도 같이 나올 예정이었던거 같은데, 아직 안나왔는지 찾을 수가 없네요. 이 글을 쓰신 저자분의 블로그도 찾았습니다. 호환성에 대한 가장 확실한 기술적 답변을 들을 수 있는 채널이지 싶네요. ㅎㅎ

저자 블로그 바로가기

Windows Vista IE7의 새로운 보안하에서 ActiveX 컨트롤 개발 (PPT 문서, 8.29MB)

백서는 아니고 비스타/IE와 ActiveX 개발에 대한 세미나 자료입니다. 참고가 될 만 하네요.
AND

아실 지도 모르지만 모르시는 분들을 위하여 정리해봅니다.
비스타 호환문제가 해결되지 않은 많은 사이트에서 도움이 됐으면 합니다.
퍼가시는 건 자유지만 출처는 밝혀주세요.
-------------------------------------------------------------------------------------------
비스타 ActiveX 문제 해결방법 ver. 0.10

본 문서는 비스타에서 발생하는 하위 호환 문제 중 기존 ActiveX 컨트롤이 일으키는 문제를 해결하기 위한 문서이다. 여기서 제시하는 해결책은 문제의 원인을 제거하는 근본적인 해결책은 아니며, 앞으로 ActiveX 개발사들이 문제를 해결하기 전까지 임시로 사용하기 위한 대안이다. 하지만, 본 대안이 보안에 결정적인 취약요소를 가지고 있는 것은 아니다. 본 해결책의 원리는 비스타의 ActiveX를 최대한 XP 환경에 가깝게 만드는 것으로 일반적인 XP(관리권한을 가진 계정에서 실행되는 일반적인 XP환경)에서 구동되는 그것과 최소한 동등한 보안구조를 가진다.

해결 가능한 대상 : 아래와 같은 문제가 발생하는 모든 국내 웹사이트

1. 인터넷 뱅킹(제1금융)사이트
2. 증권/기타 금융(제2금융) 사이트
3. 웹하드 사이트
4. 웹에서 런칭되는 캐주얼게임/MMORPG 사이트
5. 기타 ActiveX를 사용하는 사이트

해결 방법

바탕화면에 기존 Internet Explorer 바로가기를 복사한다.(위치는 맘대로)
바로가기의 "속성"으로 들어가 "바로가기" 텝에 "고급" 버튼을 누른다.
"관리자 권한으로 실행"을 체크한다.
바로가기 명을 기존 IE와 구분 지을 수 있는 이름으로 바꾼다.
비 호환 사이트에 접속할 때는 새로 생성한 바로가기를 실행하면 된다. 실행시 경고창이 뜨는 것은 관리자 권한을 필요로 하기 때문이므로 허락을 해주면 된다.


-------------------------------------------------------------------------------------------

AND


임베디드 기기를 제작하려면 하드디스크처럼 물리적인 구동모듈이 없는 OS구동이 필요하다.
특히나 윈도우즈같은 덩치큰 OS는 성격상 일반 ROM에서 구동하기에 적합하지 않기 때문에 플래시롬에서 돌려야 하겠지만, 플래시롬의 Read/Write 횟수제한은 잦은 액세스를 필요로 하는 윈도우즈를 돌릴 경우 긴 수명을 보장받기 힘드므로, 램(RAM)디스크 구동이 가능하다면 빠른 속도와 오랜 수명을 보장 받을 수 있게 된다.

필요한 준비물

- Microsoft® Windows® XP Embedded with Service Pack 1
- 충분한 메모리 공간(2기가 이상)

구동 원리는 Windows XP Embedded의 SDI Image를 이용하여 램디스크에 복사될 인스톨 드라이브의 내용을 만들고, 이를 초기 부팅시 램디스크를 마운트하고 해당 이미지를 로드하는 것이다.

SDI Image는 XP Embedded의 주 기능중 하나로 다음의 3가지 정보를 품게된다.

1. BOOT BLOB (부트 프로그램)
부트 프로그램 부분에는 STARTROM.COM이란 32비트 프로그램이 들어가게 된다. STARTROM.COM은 초기 부팅시 OEM-Authored Boot Program라는 프로그램을 로드 할 수 있는데, 이 프로그램은 이미지의 공급자가 부팅전 원하는 작업을 수행할 수 있는 기회를 준다.

2. LOAD BLOB (NTLDR)
램디스크가 마운트되면 작동할 NTLDR이 들어갈 공간이다. 부트 프로그램이 SDI 로딩을 끝내면 이 부분의 NTLDR을 작동시켜 램디스크 XP부팅이 시작된다.

3. PART BLOB
실질적인 OS가 들어갈 부분. 잊지말아야 할 부분은 인스톨본이 아니라 인스톨된 드라이브의 이미지라는 것이다. 여기에 반드시 들어가야할 3가지 내용이 있는데,
- 윈도우즈 램디스크 드라이버가 들어가 있을것
- ntdetect.com과 boot.ini가 들어 있을것
- boot.ini안에서 해당 볼륨의 실행부분을 다음과 같이 바꿀 것
[boot loader]
default=ramdisk(0)\WINDOWS
[operating systems]
ramdisk(0)\WINDOWS="Windows XPE From RAM" /fastdetect

SDI 이미지를 만든 대략적 과정은 다음과 같다. (SDI Manager 디렉터리 상에서 작업)

1. 공 SDI 이미지를 만든다.
C:\SDI>sdimgr /new ram_boot_img.sdi

2. 인스톨된 볼륨의 내용을 Import한다. (볼륨이 D드라이브일 경우)
C:\SDI>sdimgr ram_boot_img.sdi /readpart:d:

3. 부트 프로그램을 Import한다.
C:\SDI>sdimgr ram_boot_img.sdi /import:BOOT,0,startrom.com

4. NTLDR을 Import한다.
C:\SDI>sdimgr ram_boot_img.sdi /import:LOAD,0,ntldr

5. 마지막으로 패킹한다.
C:\SDI>sdimgr ram_boot_img.sdi /pack

6. 이미지에 이상이 없는지 확인해본다.
C:\SDI>sdimgr ram_boot_img.sdi

현재 계획은 초기 부팅 모듈과 SDI이미지는 플래시롬에 기록되고, 플래시롬을 통하여 SDI 이미지가 램디스크에 마운트 된 이후부터는 플래시롬은 사용되지 않는 방식을 고려중이다.
보다 자세한 내용은 MSDN의 해당 글과 SDI Manager 매뉴얼을 참고해본다.

MSDN 해당 글 바로가기
SDI Manager 바로가기
AND