Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   [решено] обмен данными между скриптами (http://forum.oszone.net/showthread.php?t=188405)

aasavelev 15-10-2010 09:20 1519314

обмен данными между скриптами
 
Скажите, можно ли как-нибудь передать данные из одного скрипта в другой? Если да то как?

madmasles 15-10-2010 10:11 1519339

aasavelev,
Посмотрите здесь Коммуникация процессов при помощи STDIN/STDOUT и здесь Еще один способ итеракции процессов.

aasavelev 16-10-2010 07:32 1519919

Я пишу следующий скрипт:
В файле 1.au3:
AutoItSetOption("ProvideRunStdout", 1)
AutoItSetOption("ProvideRunStdin", 1)

$STDIN_CHILD=2
Run("2.exe","","",$STDIN_CHILD)
StdinWrite($STDIN_CHILD,"Свойство1")

А как в 2.exe считать переданное свойство?

aasavelev 16-10-2010 19:54 1520268

2.exe это файл скомпилированный в Autoit.

madmasles 17-10-2010 10:30 1520582

aasavelev,
Попробуйте так:
1.au3:
Код:

#include <Constants.au3>

$Pid = Run(@ScriptDir & '\2.exe', '', @SW_HIDE, $STDOUT_CHILD)
$sLog = ''
While 1
    $sLog &= StdoutRead($Pid)
    If @error Then ExitLoop
    Sleep(20)
WEnd
MsgBox(0, '', $sLog)

2.au3:
Код:

For $i = 1 To 5
    ConsoleWrite($i & ' Message ' & Random(10, 100, 1) & @LF)
    Sleep(100)
Next
ConsoleWrite(@LF & 'Все.')

Скомпилируйте оба скрипта, положите их в одну папку и запустите 1.exe.


Время: 17:15.

Время: 17:15.
© OSzone.net 2001-