Нубокодер
Новичок
- Сообщения
- 75
- Репутация
- 0
В скриптах источник_1.ехе, источник_2.ехе, источник_3.ехе генерируются случайные числа (от 0 до 99) в случайном промежутке времени (от 1 до 3 секунд). Нужно передавать текущие значения этих чисел каждую секунду в виде строк в скрипт приемник.au3 и выводить (Передавать нужно обязательно строковый тип данных). Помогите пожалуйста. Покажите как это сделать. На форуме нашел только слишком сложные или не подходящие примеры. Неужели нет простого способа передать строку данных из одного скрипта в другой?
источник_1.au3:
источник_2.au3:
источник_3.au3:
приемник.au3:
источник_1.au3:
Код:
#include <GUIConstantsEx.au3>
GUICreate("1-ый источник:", 215, 23, 5, 5)
GUISetState()
Opt("GUIOnEventMode", 1) ; Включает режим OnEvent (по событию)
GUISetOnEvent($GUI_EVENT_CLOSE, "_CLOSEClicked") ; обработка закрытия
$data = "??.??" ; начальное значение неизвестно
While 1
$data_1 = Round(Random(99), 2) ; случайное число от 0 до 99
Sleep(1000 * Round(Random(1, 3), 0)) ; случайная задержка от 1 до 3 сек.
$data_1 = "Значение с 1-го источника = " & $data_1
$ID_1 = GUICtrlCreateLabel( $data_1, 15, 5)
ConsoleWrite ($data_1 & @CRLF)
WEnd
Func _CLOSEClicked()
$ext = MsgBox(4, "Выход", "Вы уверены, что хотите выйти?")
If $ext = 6 Then Exit
Return
EndFunc
источник_2.au3:
Код:
#include <GUIConstantsEx.au3>
GUICreate("2-ой источник:", 215, 23, 5, 65)
GUISetState()
Opt("GUIOnEventMode", 1) ; Включает режим OnEvent (по событию)
GUISetOnEvent($GUI_EVENT_CLOSE, "_CLOSEClicked") ; обработка закрытия
$data = "??.??" ; начальное значение неизвестно
While 1
$data_2 = Round(Random(99), 2) ; случайное число от 0 до 99
Sleep(1000 * Round(Random(1, 3), 0)) ; случайная задержка от 1 до 3 сек.
$data = "Значение с 2-го источника = " & $data_2
$ID_2 = GUICtrlCreateLabel( $data, 15, 5)
ConsoleWrite ($data & @CRLF)
WEnd
Func _CLOSEClicked()
$ext = MsgBox(4, "Выход", "Вы уверены, что хотите выйти?")
If $ext = 6 Then Exit
Return
EndFunc
источник_3.au3:
Код:
#include <GUIConstantsEx.au3>
GUICreate("3-ий источник:", 215, 23, 5, 125)
GUISetState()
Opt("GUIOnEventMode", 1) ; Включает режим OnEvent (по событию)
GUISetOnEvent($GUI_EVENT_CLOSE, "_CLOSEClicked") ; обработка закрытия
$data = "??.??" ; начальное значение неизвестно
While 1
$data_3 = Round(Random(99), 2) ; случайное число от 0 до 99
Sleep(1000 * Round(Random(1, 3), 0)) ; случайная задержка от 1 до 3 сек.
$data = "Значение с 3-го источника = " & $data_3
$ID_3 = GUICtrlCreateLabel( $data, 15, 5)
ConsoleWrite ($data & @CRLF)
WEnd
Func _CLOSEClicked()
$ext = MsgBox(4, "Выход", "Вы уверены, что хотите выйти?")
If $ext = 6 Then Exit
Return
EndFunc
приемник.au3:
Код:
#include <GUIConstantsEx.au3>
GUICreate("приемник:", 215, 69, 237, 43)
GUISetState()
Opt("GUIOnEventMode", 1) ; Включает режим OnEvent (по событию)
GUISetOnEvent($GUI_EVENT_CLOSE, "_CLOSEClicked") ; обработка закрытия
$data_1 = "??.??" ; начальное значение неизвестно
$data_2 = "??.??" ; начальное значение неизвестно
$data_3 = "??.??" ; начальное значение неизвестно
While 1
Sleep(1000 * 1) ; задержка 1 сек.
;~ ТУТ НУЖНО КАЖДУЮ СЕКУНДУ ПРИНИМАТЬ ТЕКУЩИЕ СТРОКОВЫЕ ЗНАЧЕНИЯ ИЗ СКРИПТОВ:
;~ источник_1.ехе, источник_2.ехе, источник_3.ехе
;~ И ВЫВОДИТЬ В КОНСОЛЬ. КАК ЭТО СДЕЛАТЬ?!
$ID_Out_1 = GUICtrlCreateLabel( "Значение с 1-го источника = " & $data_1, 15, 5)
$ID_Out_2 = GUICtrlCreateLabel( "Значение с 2-го источника = " & $data_2, 15, 28)
$ID_Out_3 = GUICtrlCreateLabel( "Значение с 3-го источника = " & $data_3, 15, 51)
;~ ConsoleWrite ($data & @CRLF)
WEnd
Func _CLOSEClicked()
$ext = MsgBox(4, "Выход", "Вы уверены, что хотите выйти?")
If $ext = 6 Then Exit
Return
EndFunc