canegor » 12 июл 2005, 12:20
GUI для скриптов нужен - чтобы не вспоминать мучительно ключи к скриптам и т. д. Особенно, если скрипты делать перемещаемыми (~ поделиться с кем нибудь). Возможность ввести одну строку (.vbs) или вывести окно сообщения с тремя кнопками - мало.
Кроме того у меня есть возможности, которые MS "пролопухало": Например запуск другой программы (процесса) в wscript.exe / cscript.exe предусмотрено через создание ActiveX "WScript.Shell". Там всего два варианта - запустить и не ждать, или запустить - и ждать (при этом скрипт стопорится)
У меня доступно все это плюс вариант - запустить и не ждать, а по окончании процесса получить уведомление (мой хост вызывает callback функцию Вашего скрипта). Пример:
var prId = Window.Run("%comspec% /c ping -n 5 127.0.0.1 > ping.txt","c:\\");
Window.TextOut(2, 40, 30, "Start processId: " + prId);
// Не ждет завершения "пинга"
function WM_RUN(process_id, exit_code){
Window.Delete(1);
Window.TextOut(1,50,50,"process_id: " + process_id);
Window.TextOut(1,50,70,"exit_code: " + exit_code);
Window.UpdateWindow();
};
Больше примеров:
http://canegor.campus.net.ru/gui_for_script/sample.html
P.S. Кстати - я наладил работу по протоколу FTP - теперь файлик скинуть на FTP сервер - раз плюнуть
GUI для скриптов нужен - чтобы не вспоминать мучительно ключи к скриптам и т. д. Особенно, если скрипты делать перемещаемыми (~ поделиться с кем нибудь). Возможность ввести одну строку (.vbs) или вывести окно сообщения с тремя кнопками - мало.
Кроме того у меня есть возможности, которые MS "пролопухало": Например запуск другой программы (процесса) в wscript.exe / cscript.exe предусмотрено через создание ActiveX "WScript.Shell". Там всего два варианта - запустить и не ждать, или запустить - и ждать (при этом скрипт стопорится)
У меня доступно все это плюс вариант - запустить и не ждать, а по окончании процесса получить уведомление (мой хост вызывает callback функцию Вашего скрипта). Пример:
var prId = Window.Run("%comspec% /c ping -n 5 127.0.0.1 > ping.txt","c:\\");
Window.TextOut(2, 40, 30, "Start processId: " + prId);
// Не ждет завершения "пинга"
function WM_RUN(process_id, exit_code){
Window.Delete(1);
Window.TextOut(1,50,50,"process_id: " + process_id);
Window.TextOut(1,50,70,"exit_code: " + exit_code);
Window.UpdateWindow();
};
Больше примеров: [url]http://canegor.campus.net.ru/gui_for_script/sample.html[/url]
P.S. Кстати - я наладил работу по протоколу FTP - теперь файлик скинуть на FTP сервер - раз плюнуть