댓글을 이용해서 pjyoung 님께서 질문을 남겨주셨는데요.( http://www.hind.pe.kr/805#comment6147213 )
내용을 읽어보다가, 잠시 대기라는 느낌이 들어 글을 남김니다.

지금 OBJECT 태그를 이용하시는 것까지는 맞는데요. CODEBASE 부분의 Tag 부분이 잘못된 것 같습니다.
CODEBASE라는 부분의 의미는 Object 태그가 들어간 페이지를 브라우저를 통해 띄울 때,
해당 ActiveX가 없을 때 어디서 받아가지고 오는 것인지 알려주는 부분입니다.

은행권 사이트를 예를 들어볼께요.(ActiveX 범벅이라 참 좋은 예제 같습니다 -_-;;; )
먼저 한번도 들어가본적이 없는 은행권 사이트에 접속을 합니다.
그 은행권에서 사용하는 보안용 ActiveX의 GUID가 33e6b301-a928-438d-b3b1-733bfc68ccdb 라고 하죠.
그 은행권 사이트에 접속하는 IE에서는 자신의 컴퓨터 안에 저 위의 GUID에 해당하는 ActiveX가 있는지 검색합니다.
당연히 있으면 띄우고 없으면 CODEBASE에 설정된 정보를 따라 들어가 다운로드 받고 설치합니다.
그 때 IE에서 보면 주소바 아래쪽에 노란색 바 같은게 뜨잖아요?
바로 그 행동을 한다고 사용자에게 알려주는 부분입니다.
그러나 여기서 잠시… 이 CODEBASE에 담기려면, 인증서가 배포 파일 안에 있어야 됩니다.
공인인증서 같은 것인데, 프로그램 배포용 공인인증서 입니다.
그거 안들어가면 IE에서 설치 못합니다.
(바이러스 따위로 인지해버린다는 거죠.)

아래의 링크를 보시면 알겠지만, 그 CODEBASE에 관련된 내용이 자세히 나와있습니다.

.http://digitalangelmaster.wordpress.com/2008/02/15/기존-activex-control-업그레이드/

 

그런데 위의 내용은 어떻게 보면 실험용이라기보다는 실전용의 의미에 가깝습니다.

만일 그냥 웹페이지에 띄우는 실험이나 자체적인 연습이라고 한다면 다르게 접근하시면 됩니다.
먼저 CODEBASE 부분을 삭제하시구요.
다음은 그 ActiveX를 띄우는 PC에 ActiveX를 강제적으로 설치하는 것입니다.

C:\Windows\Microsoft.NET\Framework\v2.0.50727\regasm /codebase “xxxxxxxx/form.dll”

저 위의 명령이 바로 그 ActiveX를 강제적으로 설치하는 것입니다.
아예 미리 PC 안에 설치되어 있으면 IE 에서는 군말 없이 띄웁니다. 즉 위의 명령을 써서, 직접 PC에 인스톨을 하는 것입니다. 그러면 특별한 코드상의 문제만 없다면 화면에 뜰 것입니다.

한번 확인해보세요.
(제가 해보고 싶었지만, 지금 밀린일이 좀 많아서 테스트는 안해봤어요 -_- ;;;)

728x90

+ Recent posts