![]() |
Плагины для скрипта - реально ли ?
Задача:
Нужно сделать скрипт, который при определенных входных данных ($CmdLine[1]) вызывал функцию из доп. скрипта или сам доп. скрипт, учитывая что сам основной скрипт - компилированная программа. Решение: Код:
AutoIt specific command Line Switches |
Select
Case $CmdLine[1] = 1 Run $Script1 Case $CmdLine[1] = 2 Run $Script2 Case $CmdLine[1] = 3 Run $Script3 EndSelect Мб так? Поставить функцию которая будет прослушивать входящую информацию? |
Дык дело в том что плагинов может быть 100 или 1 и просчитать их нереал, имена разные.
Я вот думаю: может выполнять ехе-шники, например если послано cmd то выполнится cmd.exe... но проблема в том что хотелось юы еще возвратные данные иметь, ошибки какие, проч. |
Код:
$Key1 = "-Key1" |
FlatX007, чета нопонял твой скрипт, да и судя по всему тут те же Case - нужно чтобы скрипт был компилиный а плагины выполнялись и чтоб-нибудь возвращали. А тут видимо уже прописано - это не вариант.
|
Ответ точно такойже как вопрос в шапке.
|
Ну объяснил бы, я в этом скрипте 0
|
Ты напиши что тебе нужно , подробно , для чего ...
|
Каков вопрос - таков ответ.
Требуется сделать так, чтобы скомпилированный скрипт умел выполнять другие нескомпилированные скрипты? Или что-то другое? Известен ли заранее набор скриптов для выполнения? |
Заранее ничего не известно. Есть основной скрипт (собственно который и нужен), а есть папка plugins (рядом), где есть пачка плагинов, их может быть 0-100000000 и т.д., каждый выполняет определенную функцию (к примеру - стирает файл), нужно чтобы основной скрипт послал команды так, чтобы этот плагин получал данные (ком.строка), и возвращал код по своему завершению, на котором и базируется ответ основного скрипта юзеру.
Вот так вот все не сложно :) |
Так... Что есть плагин? Экзешник? Каким образом определяется его имя?
И как основной скрипт может сделать, чтобы плагин возвращал значение? А вообще, для чего это надо? Может есть вариант попроще? |
Плагины что из себя представляют ? *.exe или *.au3
Пагины *.au3 должны запускаться из основной программы так AutoIt3.exe myscript.au3 -Key1 -Key2 ??? |
Итак, плагины - exe файлы aka компилированный скрипт au3. Запускается plugin.exe /lala /blahC:\ и проч.
Я думаю если передать основному скрипту cmd net start, то пусть выполняется cmd.exe "net start", может так ? |
Я ничего непонимаю , чё вы тут мудрите ... и нафиг эта галиматья нужна.
Команда cmd net start - для запуска службы - она сдесь причём ? |
Компиляция скриптов - необходимость? Нельзя ли все функции занести в основной скрипт?
|
Ну пусть скрипт - не компиленый. но как тогда не изменяя его подключить плагины ?
Итак, если основной скрипт запускать так: Код:
allscript.au3 cmd md C:\123 Код:
plugins\cmd.au3 md C:\123 Код:
Done |
Код:
AutoIt specific command Line Switches |
Воооот то что нужно!
Думаю так и буду запускать) Хотя это из командной строки... а как из просто While1 WEnd это все ? |
Есть ещё более жестокий метод))
Смотри функцию Execute Если скрипт скомпилирован. Что тебе мешает запустить его ещй раз из самого себя? |
Ну это уже изврат нереальный канешн) себя запускать - жуть.
Ехекут пробнем) |
Время: 13:29. |
Время: 13:29.
© OSzone.net 2001-