«   2021/09   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    
Archives
Today
4
Total
268,030
관리 메뉴

컴퓨터 프로그래밍

컨테이너 본문

ActiveX/컨트롤

컨테이너

jjryu 2008. 12. 16. 23:55
// 웹페이지
속성의 초기값 설정 // 프로퍼티 맵
<PARAM />


컴포넌트 카테고리
컴포넌트의 기능을 표현하는 일반적인 방법

웹 페이지에서 사용될 때 해당 ActiveX 컨트롤은 모든 웹 페이지 상에서 자신이 안전하다는 것을 보장해야 한다.
컨트롤의 안정성을 보장하지 않으면 Internet Explorer의 보안 설정을 낮음으로 설정하지 않으면 아예 동작을 하지 않는다. // ObjectSafety

- 파일 시스템을 조작하지 않는다.
- 자신을 등록 또는 해제하는 것을 제외하고는 시스템 레지스트리를 조작하지 않는다.
- 배열의 범위를 넘어선다든가 메모리를 부적절하게 조작하지 않는다.
- 모든 입력값에 대해서 데이터의 유효성을 확인한다.
- 사용자 또는 사용자가 제공한 데이터를 부적절하게 사용하지 않는다.


Microsoft Internet Explorer가 컴포넌트를 다운로드할 때 해당 컴포넌트가 디지털 서명(digital signature)이라고 하는 것을 가지고 있는지를 검사한다.
해당 컴포넌틀 제작한 회사를 나타내는 문자열
보안증(certificate)
디지털 서명을 확인할 수 있게 하기 위한 또 다른 바이트 문자열

Microsoft Internet Explorer가 HTML 다큐먼트를 읽으면 먼저 클라이언트의 시스템 레지스트리에서 ActiveX 컨트롤의 CLSID를 찾는다.
존재하지 않으면 웹 페이지가 다운로드된 웹 서버에서 클라이언트 시스템으로 해당 ActiveX 컨트롤을 다운로드한 후, 클라이언트 시스템에 설치하고 레지스트리에 등록 // CODEBASE
인터넷 컴포넌트 다운로드(Internet Component Download)
CAB(Cabnet) 파일 다운로드
"C:\WINDOWS\Downloaded Program Files"

CODEBASE 속성은 버전 번호를 포함할 수 있다.
이 버전 번호가 현재 시스템에 설치되어 있는 컴포넌트의 버전 번호보다 큰 경우에만 새로운 코드가 다운로드된다.

컨트롤을 인터넷 상에 배포하기 위해서는 서명된 캐비닛 파일 안에 패키지하여야 한다.
Microsoft Internet Explorer(IE) 3.02 이하
Visual C++ 5.0 CD의 CAB&SIGN 폴더
IE 4.0 이상
IE 4.0 용 인터넷 클아이언트 SDK(INet SDK)이 bin 폴더
C>SETREG 1 TRUE
C>MakeCert -n "CN=..." -sv Test.pvk Test.cer
C>Cert2Spc Test.cer Test.spc
C>CabArc -s 6144 n AsyncEdit.cab atl.dll AsyncEdit.dll AsyncEdit.inf
-s 옵션은 디지털 서명을 위한 영역의 크기(6144는 6K 바이트)
n 명령은 새로운 캐비닛 파일을 생성
C>SignCode -spc Test.spc -v Test.pvk -n "AsyncEdit" AsyncEdit.cab
-n 옵션은 서명되는 파일의 내용을 나타내는 텍스트
인터넷 익스플로러
[도구|인터넷 옵션|두 번째 탭 보안|사용자 지정 수준|서명 안된 ActiveX 컨트롤 다운로드] 항목을 확인으로 변경
// VB

// Win32 윈도우

// Win32 다이얼로그

// MFC CWnd

// MFC CDialog

참조 사이트:
http://debugjung.tistory.com/entry/ATL-ActiveX-%EB%A7%8C%EB%93%A4-%EC%8B%9C-%ED%8C%81%EB%93%A4
http://blog.naver.com/goldworm/40053528426
http://jys92.com.ne.kr/VisualC/SafityActiveXControl.htm
http://debugjung.tistory.com/entry/ActiveX-%EC%BB%A8%ED%8A%B8%EB%A1%A4%EC%97%90%EC%84%9C%EC%9D%98-IObjectSafety-%EC%9D%B8%ED%84%B0%ED%8E%98%EC%9D%B4%EC%8A%A4-%EA%B5%AC%ED%98%84
http://jys92.com.ne.kr/VisualC/MakeCab.htm
http://debugjung.tistory.com/entry/%EC%95%A1%ED%8B%B0%EB%B8%8CX-%EC%83%9D%EC%84%B1%EC%97%90%EC%84%9C-%EB%B0%B0%ED%8F%AC%EA%B9%8C%EC%A7%80
http://blog.pages.kr/307
http://jjjryu.tistory.com/entry/%EC%BB%A8%ED%85%8C%EC%9D%B4%EB%84%88-MFC-%EC%95%A1%ED%8B%B0%EB%B8%8CX-%EC%BB%A8%ED%8A%B8%EB%A1%A4
http://rkttu.com/entry/ActiveX-%ED%8C%A8%ED%82%A4%EC%A7%95-%EB%B0%8F-%EB%B0%B0%ED%8F%AC%EC%97%90-%EA%B4%80%ED%95%9C-%EB%AA%87-%EA%B0%80%EC%A7%80-%ED%8C%81

Comments