본문 바로가기

개발자愛/JAVA

플러그인 설치 유무 및 확인 & JavaScript

OBJECT 태그를 이용합니다.

codebase 속성에 ActiveX가 설치되지 않았을때 패키지를 다운받을 주소를,
classid 에 GUID 식별자를 넣습니다.

아래의 예시 코드는 오브젝트가 설치 되었다면 실행을, 설치가 되지 않았다면 설치할 수 있는 창이 뜨게 되는데, "아니오"버튼을 누르게되면 경고메시지를 보여줍니다.
(예시 코드는 사이트지기가 근무하는 곳에서 구현했던 오브젝트의 부분을 인용하였습니다)

<script language=javascript>
<!--
   function activex_error(){
       alert("Object 사용을 위한 ActiveX 설치가 되지 않았습니다");
    }
-->
</script>

<object id= 'WebWaltz' width='0' height='0' classid='clsid:8299566F-5C54-472F-926A-9EE6DD489102'
codebase='http://URL경로/파일명.cab#version=1,0,1,65' onError='JavaScrpt:activex_error()'>
<param name='_Version' value='65536'>
<param name='_ExtentX' value='2646'>
<param name='_ExtentY' value='1323'>
<param name='_StockProps' value='0'>
<param name='wmode' value='transparent'>
<param name='domain_name' value='naravision.net'>
<param name='domain_list' value='naravision.net'>
<param name='ServerIp' value='58.225.75.5:12000'>
<param name='companycode' value='사용안함'/>
<param name='link_type' value='2'>
<param name='skintype' value='0'>
<PARAM NAME='linkevent' VALUE ='0'>
<PARAM NAME='skinhttp' VALUE ='http://waltz.imtong.com/demo/'>
</object>

상기와 같이 구현하게 되면 Object 를 실행할때 설치여부에 따라 activex_error() 펑션을 호출하게 됩니다
※ 2006년 2월 IE 패치로 인하여 Object 가 즉시 실행되지 않는 문제역시 단순한 방법으로 해결이 가능합니다. 위의 코드는 예를 들기 위한 것으로 즉시 실행처리를 하지 않은 것이며, 즉시 실행되게 하기 위해서는 해결 해주어야 합니다.


또 다른 방법으로는...

function checkActiveX(){
  try{
       var obj = new Activeobject("TEST.OCX");
       if(obj) Installed = true;
       else Installed = false;
  }catch(ex){
       Installed = false;
  }
 
  if(Installed == true) alert("ActiveX Control이 설치되었습니다");
  else alert("ActiveX Control이 설치되지 않았습니다");
 
}

와 같은 펑션을 사용하여 오브젝트를 확인 해 보는 것도 방법이 되겠습니다

'개발자愛 > JAVA' 카테고리의 다른 글

IT맨, 내가 사직서를 쓴 이유  (2) 2007.06.15
[GNU]AIX gcc 설치  (0) 2007.06.07
리눅스 시스템 시간 설정하기  (0) 2007.05.16
리눅스 서비스(데몬)의 종류와 관리  (0) 2007.05.09
... 지금은 IDC...  (0) 2007.02.26