Что нового

Передать тектовые данные из одного скрипта в другой

Dimmak

Знающий
Сообщения
185
Репутация
9
Подскажите, пожалуйста, как передать текстовые данные из одного скрипта в другой.
Т.е. нужно запустить один скрипт из другого и получить информацию о его корректном
завершении.

Я использовал такой код, но он не удобен, тк выводится весь текст ConsoleWrite().
Подскажите альтернативу!

Код:
Func _tmp( $sScriptPath )
   $iPID= Run( '"'& @AutoItExe &'" /AutoIt3ExecuteScript "'& $sScriptPath & '"', "", "", $STDOUT_CHILD)
      ProcessWaitClose($iPID)
         $out= StdoutRead($iPID)
            ConsoleWrite(  $out &@cr )
EndFunc
 

InnI

AutoIT Гуру
Сообщения
4,912
Репутация
1,429
выводится весь текст ConsoleWrite
Просто добавьте контрольную строку перед корректным выходом из дочернего скрипта, а в основном проверяйте её наличие
Код:
; дочерний скрипт
ConsoleWrite("script completed successfully")

; основной скрипт
...
$out = StdoutRead($iPID)
If StringInStr($out, "script completed successfully") Then MsgBox(0, "", "OK")
 

damien2008

Осваивающий
Сообщения
178
Репутация
34
называется DDE ( Dynamic Data Exchange )
 
Верх