Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   открытие файла (https://javascript.ru/forum/misc/24248-otkrytie-fajjla.html)

kukuruzic 22.12.2011 18:59

открытие файла
 
довольно таки плохо разбираюсь в файлах js , поэтому никак не могу найти решение проблемы, есть задача - создать js файл, что бы тот открыл командную строку и выполнил комманду find, моим первым же действием было написать след код

var WshShell, ObjExec;
WshShell =WScript.CreateObject("WScript.Shell");
ObjExec =WshShell.run("%COMSPEC% /k find "123" 123.txt ");
WScript.Sleep(1000);

, но т.к. по синтаксису команда find требует кавычки - то разумеется нестало работать, если использовать

WshShell.SendKeys("");

то опять встаёт проблема с кавычками, решил сделать файл cmd который будет выполнять функцию find , написал код

var WshShell,s, ObjExec;
WshShell =WScript.CreateObject("WScript.Shell");
ObjExec =WshShell.run("%COMSPEC% /k 123.cmd");
WScript.Sleep(1000);

, но теперь мне выдаёт, что неверый формат комманды попробовал ещё раз подругому

var WshShell,s, ObjExec;

WshShell =WScript.CreateObject("WScript.Shell");
ObjExec =WshShell.run("%COMSPEC% /k ");
WScript.Sleep(1000);
WshShell.SendKeys("123.cmd");


WScript.Sleep(1000);

выдаёт 123.3-4 , да и вобще данный вариант не особо хороший, т.к. командная строка открывается , но путь - не тот где находится js файл её запустивший.

dmitriymar 22.12.2011 19:07

то что вы написали -это Visual Basic, но никак не JavaScript

kukuruzic 22.12.2011 19:15

спасибо большое, что подсказали, что это не ява скрипт , а визуал бэйсик.... а то который день ищу информацию на спец. сайтах по ява скрипту =)

devote 22.12.2011 19:18

Это VBScript

Magneto 22.12.2011 20:04

Попробуй задать свой вопрос на этом форуме.

Gvozd 22.12.2011 20:09

dmitriymar,
devote,
Что с вами? Вы в своем уме?
Код в первом посте вообще-то на JScript, но никак не на VBscript

Gvozd 22.12.2011 20:11

kukuruzic,
Кавычки надо экранировать. Это самые основы языка
Вот так ваш первый пример работает:
var WshShell, ObjExec; 
 WshShell =WScript.CreateObject("WScript.Shell"); 
 ObjExec =WshShell.run("%COMSPEC% /k find \"123\" 123.txt"); 
 WScript.Sleep(1000);

FINoM 22.12.2011 22:01

kukuruzic, не знал что кто-то кроме меня использует WHS.

nerv_ 22.12.2011 22:29

Цитата:

Сообщение от Gvozd
Код в первом посте вообще-то на JScript, но никак не на VBscript

Насчет JScript не знаю, но в VBScript синтаксис другой. Там переменные объявляются с ключевым словом Dim (преимущественно), да и точки с запятой в конце каждой строки приведут к ошибке.


Часовой пояс GMT +3, время: 16:47.