2011-10-07 2 views
0

중복 될 수 있습니다.자바 스크립트를 사용하여 파이어 폭스 브라우저에서 시스템 명령어 또는 파이썬 스크립트를 평가

나는 파이어 폭스에서 리눅스 명령을 실행할 수있는 자바 스크립트를 작성하려합니다 인터넷 검색에서

(불가능하지만 희망을 묻는 것 같다)은 "ActiveXObject"를 통해 IE를 위해 가능하다는 것을 발견했다. 여기

샘플 코드입니다 : 그래서

<SCRIPT type="text/javascript" LANGUAGE="JavaScript"> 
    function executeCommands(inputparms) 
    { 
    // Instantiate the Shell object and invoke 
    its execute method. 

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

    var commandtoRun = "C:\\Winnt\\Notepad.exe"; 
    if (inputparms != "") 
    { 
     var commandParms = document.Form1.filename.value; 
    } 

// Invoke the execute method. 
    oShell.ShellExecute(commandtoRun, commandParms, 
     "", "open", "1"); 
    } 
</SCRIPT> 

, 모질라 애플 리케이션을위한 자바 스크립트에서 ActiveXObject의 동등한이 있습니까? 저는 자바 스크립트에 너무 익숙해 져 있습니다. 실수가 있으면 수정하십시오.

감사합니다.

답변

1

Firefox 부가 기능에서는 nsIProcess을 사용할 수 있습니다. 다음 줄에있는 항목 :

var file = Components.classes["@mozilla.org/file/local;1"] 
        .createInstance(Components.interfaces.nsILocalFile); 
file.initWithPath("C:\\Winnt\\Notepad.exe"); 
var process = Components.classes["@mozilla.org/process/util;1"] 
       .createInstance(Components.interfaces.nsIProcess); 
process.init(file); 
process.runAsync(["c:\\file.txt"]); 

이 API는 권한있는 코드에서만 액세스 할 수 있습니다.

+0

답장을 보내 주셔서 감사합니다. 파일 경로 변경으로 우분투에서 코드를 사용해 보았습니다. 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.initWithPath] "nsresult :"0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) "위치 : JS 프레임 :: chrome : // helloworld/content/overlay.js :: anonymous :: line 85 "data : no" – Yajushi

+0

@ Yajushi :''/ usr/bin/sh ''와 같은 절대 경로를 사용해야합니다. 상대 경로 나 백 슬래시를 사용하는 경로는이 옵션과 함께 거부됩니다 에러 메시지. –

+0

다시 한번 감사드립니다. 효과가 있습니다. 가능하다면 에 다시 도움이 필요합니다. "/usr/bin/openoffice.org"및 "/ usr/bin/gnome-terminal"에 대한 코드가 작동하지만 "/ usr/bin/onboard"를 시도하면 아무 것도 열리지 않습니다. 어떤 아이디어입니까? 잘못된 ? – Yajushi

0

아니요, 클라이언트 컴퓨터에서 임의의 기본 명령을 실행할 수 없습니다.

+0

그는 추가 기능에 대해 질문했습니다. –

관련 문제