2012-05-01 8 views
6

Próbuję otworzyć okno telnet i wysłać kilka kluczy do tego aktywnego okna. Poniżej znajduje się kod JavaScript:Telnet Korzystanie z apletów w 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; 

Ale nie jestem w stanie otworzyć je wszystkie takie same. Mówi, że plik nie istnieje. Jednak skomentowane linie działają doskonale, gdy są nieczytelne. jaki może być problem?

Z góry dziękuję.

+1

Jak możemy mieć metodę ActiveXObject ("WScript.Shell") w firefox. powyższy kod działa tylko w IE. – Avi

+0

Może potrzebujesz ".exe", jak "telnet.exe ...", a nie tylko telnet –

+0

próbowałem, że to nie działa, podałem nawet pełną ścieżkę do exe – Avi

Odpowiedz

1

@Avi, Nie sądzę, że będziesz w stanie wykonać tego typu polecenia po załadowaniu strony, chyba że korzystasz z Internet Explorera i włączysz pełne zaufanie. Jeśli jednak musisz to zrobić, musisz podać pełną ścieżkę do telnet.exe. Po prostu strzeż się, że Windows używa \, aby oddzielić poziomy katalogów, ale jest to znak specjalny dla javascript i musi zostać zmieniony; tj .:

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

Czy próbowałeś już użyć adresu URL takiego jak telnet://43.43.22.45?

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

Telnet jest w ścieżce systemowej domyślnie. To powinno działać.

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

Firefox jest nie w ścieżce systemowej. Dlatego bieg nie ma pojęcia, jak go znaleźć.

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

Zwróć uwagę na spację przed "notepad" -> Ta nazwa pliku nie istnieje.

Powiązane problemy