이 프로그램 내용은 제목과 같이...
웹사이트 접속해서 액티브엑스를 실행시키면 프로그램 설치 여부를 체크 하여...
미설치 되었으면 파일을 다운로드 받아서 설치 해 주는것이고...
설치 되었으면 해당 프로그램을 실행해 주는 것입니다.
일단 이 엑티브엑스를 만들기 전에...
해당 셋업 프로그램에 셋업시 특정 레지스트리에 실행파일 위치를 적어 놓도록 했습니다.
그래서 셋업을 하게 되면 레지스트리에 실행할 디렉토리가 남게 되는 것이고...
그 레지스트리 값을 읽어와서 레지스트리에 값이 있으면 실행
아니면 다운로드 후 실행 과 같은 형태입니다.
서버에 올릴 HTML 소스
HTML 간략 내용.
<OBJECT
</OBJECT>
이건 액티브엑스 만든후 생성된 파일에 보면 있습니다. 그 내용을 그냥 복사한 내용입니다.
<SCRIPT TYPE="TEXT/JAVASCRIPT"
if (parameters.length > 1)
{
AX.SETID = request.getId();
}
AX.ButtonClick = 1;
/SCRIPT>
이건 URL 의 변수부분을 받아 오기 위한 부분입니다.
가령 http://zeron.co.kr/rfid.html?id=test 이렇게 입력을 하게 되면...
AX.SETID = request.getId(); 여기에서
액티브엑스의 변수 ID 에 test 라는 아이디를 셋팅하게 되는 과정입니다.
AX.ButtonClick = 1; 이건 액티브엑스의 버튼을 클릭하게 하는 것이구요...
스크립트 내의
function activeX_self() 함수는 액티브엑스가 설치되어 있는지 유무를 체크합니다.
설치 되어 있다면 위의 엑티브엑스를 실행 했으니...
if(Installed == true)
{
window.opener='Self';
window.open('','_parent','');
window.close(); //설치되어 있으면 창을 닫는다.
}
else
{
alert("ActiveX 를 설치 하셔야 합니다..");
}
설치되어 있으면 액티브엑스 실행후 창을 닫고 아니면 아래 화면을 쭉 뿌려 주면서
액티브엑스 설치 할 수 있도록 화면에서 안내를 해 줍니다.
제가 웹쪽에 거의 문외한이라 블로그에 화면 덤프 뜬 다음 카피해서 붙여놓은거라...
화면이 예쁘지 않네요...
http://zeron.co.kr/rfid.html 테스트 해 보실 수 있는 주소입니다.
델파이 ActiveX 소스
소스에서 보시면
procedure TaxGuestStart.Set_ButtonClick(Value: Integer);
begin
if Value = 1 then ProgramExcute;
end;
procedure TaxGuestStart.Set_SetID(const Value: WideString);
begin
L_stUserID := string(Value);
end;
이 부분이 스크립트와 연동되는 부분입니다.
이건 요즘 델파이 거의 사용 안하시지만...
혹시라도 델파이와 액티브 엑스 연동 과정에 필요하신 분 있을까 봐서도 올렸지만...
혹시라도 나중에 제가 다시 액티브 엑스 관련된 프로그램 할 수 있으면...
제가 참고 하기 위해...
자료 보관 차원에서 데이터를 올립니다.