2012-05-01 6 views
6

私はTelnetウィンドウを開き、いくつかのキーをこのアクティブなウィンドウに送信しようとしています。 は、以下のJavaScriptコードです:Telnet JavaScriptでアプレットを使用する

var oWshShell = new ActiveXObject("WScript.Shell"); 
oWshShell.Run("telnet 43.43.22.45 23"); 
//oWshShell.Run("firefox.exe http://www.google.com"); 
//oWshShell.Run(" notepad.exe"); 
oWshShell = null; 

しかし、私はすべて同じそれらを開くことができません。それはファイルが存在しないと言います。ただし、コメント行はコメントを外すと完全に動作します。何が問題なの?

ありがとうございます。

+1

私はどのようにActiveXObject( "WScript.Shell")メソッドをfirefoxに持つことができますか?上記のコードはIEでのみ動作します。 – Avi

+0

「telnet.exe」のような「.exe」が必要なのかもしれません。 –

+0

私はそれを試してみました。うまく動かず、exeへの完全なパスを与えました。 – Avi

答えて

1

@Avi、Internet Explorerを使用して完全な信頼のセキュリティを有効にしない限り、ページが読み込まれたときにこのタイプのコマンドを実行できるとは考えていません。ただし、この方法を実行する必要がある場合は、完全パスをtelnet.exeに指定するだけです。ウィンドウが\を使用してディレクトリレベルを区切っていることに注意してください。しかし、これはjavascriptの特殊文字であり、エスケープする必要があります。すなわち:

var path = "c:\\Windows\\System32"; // this is c:\Windows\System32 in javascript 
0

代わりにtelnet://43.43.22.45のようなURLを使用してみましたか?

<a href="telnet://43.43.22.45">Connect to server</a>. 
0
oWshShell.Run("telnet 43.43.22.45 23"); 

Telnetはデフォルトでは、システム・パス内にあります。これはうまくいくはずです。

//oWshShell.Run("firefox.exe http://www.google.com"); 

Firefoxはシステムパスにではありません。そのため、実行にはそれを見つける方法がありません。

//oWshShell.Run(" notepad.exe"); 

"notepad"の前のスペースに注意してください - >そのファイル名は存在しません。

関連する問題