어찌보면 단순한 이야기일수도 있겠지만, 실제로 하려다보니 여러가지 문제가 생겨서 
해결과정을 글로 남겨두려고 한다.

하려고 하는것은 WebPage에서 로컬PC 내부에 저장되어있는 exe 파일을 실행하는것이다.

처음 시작하기전에 생각한것은 아래와같다.

1. ActiveX를 사용해서 로컬PC의 파일을 다이렉트로 실행한다. 
2. 레지스트 등록을 통해서 정해진 키값을 WebPage내부에서 Script 호출해서 사용한다. 
3. 브라우져에서 파일접근 확인창이 매번 뜨지않도록 제어한다.(Chrome, IE, Edge)


시작전에 생각한 문제점
1. 인터넷 브라우저에 특정되지 않는가? (IE 외에는 ActiveX 실행이 어렵지 않을까?)
2. 레지스트 등록은 관리자 권한이 없으면 안된다.


천리길도 한걸음부터….
우선, 하나하나 시작해보도록 한다.

1. ActiveX를 사용해서 로컬PC의 파일을 다이렉트로 실행한다.

<script LANGUAGE="JavaScript">
function cmd() {
    var obj = new ActiveXObject("WScript.Shell");
    obj.Run("C:\\test\\sample.exe");
}
</script>
<body>
---ActiveX Sample---<br><br>
<a href="javascript:cmd()">ActiveX sample</a><br>
</body>

단순히 위와같은 코드로 효과를 볼수가있다.
실행하면 아래와같이 된다.

아래부분의 하이퍼링크를 클릭하면 sample.exe 가 실행된다.
하지만, 예외없이 경고창이 등장한다. (필자가 일본에 있어서, 일본어판 윈도우를 사용하고 있습니다.)

이 페이지의 ACtiveX 컨트롤은 안전하지않을 가능성이 있고, 페이지 외의 부분에서 영향을 끼칠수 있습니다. 다른 부분의 영향에 대해 문제가 없습니까?

라고 나오는데, 뭐 실행을 시켜야하니까 그냥 Y 로 속행~~ 하면, 실행이 된다.

다음편에서는 

레지스트 등록을 통해서 정해진 키값을 WebPage내부에서 Script 호출해서 사용한다. 

에 대해서 다루어 보도록하겠다.

+ Recent posts