티스토리 뷰

안녕하세요~

오늘은 뜬금없는 ActiveX 포스팅입니다.


아 물론 전세계적으로도 그렇고 우리나라도 그렇고 "ActiveX OUT!!!" 를 외치는 시대에 살아가고 있지만,

여전히 시대에 맞지 않는 환경으로 인하여 이렇게 쓸일이 생기는 경우가 간간히 생기네요.

세기전 흥선대원군의 쇄국정책만큼이나 꽉막힌 네트워크 쇄국정책으로 인해서

아직도 윈도우7 + ie6 과 같은 조합의 환경을 고려해서 작업해야하는 일이 종종 있어요~


네, 암튼 구구절절 한탄은 그만하고 본론으로 넘어가겠습니다.


우선 소스코드 설명을 드리면

"자바스크립트로 사용자의 로컬에 Chrome 브라우저 실행 파일이 존재하면 Chrome 실행 후 내가 원하는 URL을 즉시 호출"

기능을 하도록 작성된 자바스크립트 입니다.


소스는 다음과 같습니다.

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Execute chrome browser</title>

<script type="text/javascript">

var fn_chromelaunch = function() {


    var oShell = new ActiveXObject("Shell.Application");

    var chromeCommand = 'C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe';

    var commandOption = ' --app="http://www.naver.com"';

    var launchCommand = chromeCommand + " " + commandOption;

    

    fso = new ActiveXObject("Scripting.FileSystemObject");

    

    if (!fso.FileExists(chromeCommand)) {

    alert("---- Chrome 브라우저가 설치되어 있지 않습니다.");

    return;

    }

    

    oShell.ShellExecute(chromeCommand, commandOption, "", "open", "1");

    

    window.opener = self;

    var w = window.open('', "_self", "");

    w.close();

};

</script>

</head>

<body>

<button onclick="fn_chromelaunch();">크롬 실행</button>

</body>

</html>



네, 위와 같구요.

참고로 IE11에서도 실행이 가능합니다.

단지 설정이 조금 필요할 뿐이죠...

 익스플로러의 "도구 -> 인터넷 옵션" 메뉴를 실행 한 후, "보안" 탭을 선택합니다.

"인터넷" 또는 "로컬 인트라넷" 등 보안설정을 변경할 영역을 선택하고, 아래쪽의 "사용자 지정 수준" 버튼을 클릭합니다.

그리고 설정 중 "서명 안된 ActiveX 컨트롤 다운로드", "스트립팅하기 안전하지 않는 것으로 표시된 ActiveX 컨트롤 초기화 및 스크립팅"

이 두가지 항목을 "사용" 또는 "확인"으로 설정하시면 됩니다.


위와 같이 설정 하시면 IE10, IE11에서도 실행 되실겁니다.



그럼 좋은하루 되세요!




댓글