ActiveX 웹배포

Programming/C,CPP,CS 2019. 12. 10. 11:49 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

***** 1.인증하기-퍼온 글입니다 *****

 

 ▶ Step1. 파일명.CAB 을 인증서가 있는 폴더에 붙여넣습니다.

 

 

▶ Step 2. MSDOS 프롬프트에서 ActiveX Control이 모여있는 폴더로 이동한 뒤 다음과 같이  입력합니다.

    makecert -n "CN=test" -sv test.pvk test.cer  

 

 

▶ Step 3. 다음과 같이 개인공개키를 생성하는 화면이 나타납니다.

    적당한 패스워드를 입력해 주십시오.     

 

▶ Step 4. test.pvk와 test.cer 파일이 생성됩니다. 생성된 ser 파일을 이용해서 spc 파일을  생성합니다. dos 창에서 아래와같이 입력합니다.

    cert2spc test.cer test.spc  

 

▶ Step 5. Succeeded라는 메시지가 나타나고 spc 파일이 성공적으로 생성된것입니다.

    cab 파일 서명을 위해 다음과 같이 입력합니다.  

    signcode -spc test.spc -v test.pvk -n "test" 파일명.cab

 

▶ Step 6. 이전에 설정한 비밀번호를 입력합니다.  

 

▶ Step 7. Test Sign 과정이 마무리됩니다. DOS 창에서 다음과 같이 인증확인을 해볼 수 있습니다.

   chktrust 파일명.cab  

 

  * 생성과정 중간에 Warning은 서명한 시간이 없어서 그런 것인데,

   테스트용은 원래 시간을 적지 않습니다.

 

▶ Step 8. 인증한 파일명.CAB파일(인증하기명령어가 있는 폴더에 붙여넣은 파일)을 원하는 폴더(웹호스팅폴더)에 업로드합니다.

 

 

 

 

***** 2.배포하기 *****

<!--

이부분은 보통 필요하지 않으므로 주석상태 이대로 두시면 됩니다.

<OBJECT CLASSID="clsid:5220cb21-c88d-11cf-b347-00aa00a28331">

    <PARAM NAME="LPKPath" VALUE="LPKfilename.LPK">

</OBJECT>

-->

 

<OBJECT ID="test1"

CLASSID="clsid:D743E11F-1E3D-4290-8844-D8DB1A36A5B7" CODEBASE="download/ocx/test1.CAB#version=1,0,4,0">

</OBJECT>

 

▶ clsid:D743E11F-1E3D-4290-8844-D8DB1A36A5B7 이부분은 CAB만드시고 압축을 풀어보시면

   test1.inf파일을 열어서 보시면 [test1.ocx]부분에 보시면 clsid={D743E11F-1E3D-4290-8844-D8DB1A36A5B7} 이걸 적어주시면 됩니다.

 

▶ CODEBASE는 위에 분의 말씀대로 다운로드 받을 경로(상대 or절대경로)적어주시고 #Version은 수정될때 업데이트 할때 필요합니다.

 

 

 

 

***** 3.체크하기 ***** 

 

만약 [1.인증하기]에서 chktrust 파일명.cab 했을때 설치할건지 물어보는 창이 뜬는데...

설치가 안된다.

 

[익스플로어]-[도구]-[인터넷옵션]-[보안]-[사용자지정수준]-[ActiveX컨트롤 및 플러그인]

 

  1.서명 안 된 ActiveX컨트롤 다운로드 - [사용] or [확인] 에 체크하십시오.

  2.안전하지 않은 것으로 표시된 ActiveX컨트롤 초기화 및 스크립팅 - [사용] or [확인] 에 체크

     -이 부분에 [사용안함]으로 체크시 웹코딩에서 <PARAM>으로 ActiveX에 프로퍼티넘길때 작동하지 않고

      스크립팅에서도 작동하지 않음

  3.ActiveX컨트롤 및 플로그인 실행  - [사용]체크해야 되겠죠

 

 

 

**** 배포전에 수동설치로 테스트하기 *****

 

우선 배포전에 해당ActiveX를 수동으로 로컬PC에 설치해보십시오.

1. WINDOW\system32\폴더에 해당OCX파일을 복사하시고

2. [실행]-regsvr32 파일명.ocx 로 레지스트리에 등록

3. 웹코딩에서 해당 ocx의 CLASSID="CLSID:D743E11F-1E3D-4290-8844-D8DB1A36A5B7"로 참조

4. 웹페이제에서 작동하면 OCX에는 이상이 없는 거겠죠

5. 설치한 OCX제거하기

6. [실행]-[regedit]-[HKEY_CLASSES_ROOT]-[편집메뉴]-[찾기]-D743E11F-1E3D-4290-8844-D8DB1A36A5B7복사

7. {D743E11F-1E3D-4290-8844-D8DB1A36A5B7}에 커서가 선택되어 있으면 [마우스오른쪽버튼]-[삭제]

8. 열어둔 익스플로어 닫고 새로 열어서 테스트 화면을 엽니다.(새로고침하면 계속작동이 됩니다.)

9. 그러면 해당OCX가 삭제 되서 OCX가 작동하지 않겠죠

10. 배포방법이 올바르면 설치할건지 알림창이 하나 뜨겠죠.

11. 설치 눌러서 설치가 됐다면 OCX가 제대로 작동하겠죠.

12. 만약에 설치창이 뜨고 [예]를 눌러서 설치를 했는데도 작동을 하지 않는다면...

13. 6번 방법으로 해당 OCX가 설치되었는지 확인하십시오.

14. 설치가 됐는데도 안 뜬다면...  [3.체크하기]의 보안-ActiveX의 사용여부 사항을 체크을 확인하시기 바랍니다.

 

 

'Programming > C,CPP,CS' 카테고리의 다른 글

[NTP] CNtpTime, sntp.h, sntp.cpp 의 문제점 정리  (0) 2019.12.24
[CPP] NTP Sync LocalClockOffset  (0) 2019.12.23
ffmpeg sample  (0) 2018.06.20
중복 실행 방지 코드 (Mutex)  (0) 2018.04.18
WAVE form wFormatTag IDs  (0) 2018.04.04