Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » подключиться к pipe серверу

Страниц (5): « 1 2 [3] 4 5 »
 

21. 007wan - 10 Ноября, 2019 - 23:20:25 - перейти к сообщению
 Zireael пишет:
 Цитата:
А пример можно

Вначале темы пример на c++. А для передачи данных между кибор есть writebuffer.

Мне нужно, что бы буфер какой-то создавался, если он создан, то общаться: одна программа в него пишет, другая - читает. При закрытии буфер не долженссбрасываться(В киборе такого нету) и без привязки к окну, так же - быстрая скорость общения для обработки информации. Не мало важно: приватность- что бы никто из сторонних не смог управлять буфером через программу.
22. Zireael - 11 Ноября, 2019 - 01:27:19 - перейти к сообщению
 Цитата:
При закрытии буфер не долженссбрасываться(В киборе такого нету)

Такого нигде нет. Чтобы что-то сохранить это надо куда-то записать и уж точно не в память, потому что она освобождается при закрытии программы.
23. 007wan - 11 Ноября, 2019 - 01:41:06 - перейти к сообщению
 Zireael пишет:
 Цитата:
При закрытии буфер не долженссбрасываться(В киборе такого нету)

Такого нигде нет. Чтобы что-то сохранить это надо куда-то записать и уж точно не в память, потому что она освобождается при закрытии программы.
Убедил. Тогда может мне как-то скрытый текстовый файл создать и записать это всё туда? Или не имеет смысла?
24. 007wan - 11 Ноября, 2019 - 09:43:50 - перейти к сообщению
Можно сложный пример? (С комментариями, что б понять)
1) будет создано несколько pipe (3 шт) и запишет туда, в каждый, например, в первый часы, в другой минуты, третий секунды. это первый exe .
Хочу посмотреть реакцию на быстролействие.
2)создается еще 3 exe, которые это будут читать не общая между собой, кроме главного exe и выводить по отдельности время.

Так решится одна проблема, про которую я потом вам скажу, writebuffer не очень подходит для общения.
25. Zireael - 11 Ноября, 2019 - 17:01:47 - перейти к сообщению
 Цитата:
writebuffer не очень подходит для общения.

Почему?
26. 007wan - 11 Ноября, 2019 - 21:20:12 - перейти к сообщению
 Zireael пишет:
 Цитата:
writebuffer не очень подходит для общения.

Почему?
я не знаю как мне это назвать. Допустим вы общайтесь с 3 и более программами через буфер кибора с указателем на диалог и главная exe пишет буфер текст для кажжой программы, а те в свою очередь должны его 1)найти: какой текст для чего и кому(парсинг)
2)ответить на него, т.е записать в буфер диалога измененный текст такого плана: найти старый, заменить соответствующий текст на свой и отправить окну, все бы хорошо, только пока одна программа будет меня, то пипец что будет, когда из 50-100 exe, получается россинхрон какой-то, а pipe хотя бы имеют свои созданные буфера - коробки. Смешивание как такового не будет.

Для понимания приведу пример:
1)exe (главный) : пишет окну

"Первая программа закройся, ответь перед закрытием, пж!//текст для первого exe

Вторая включи такую-то опцию...ответь,если успешно

Третья запусти скрипт...ответь, если успешно//это все команды
"
Так вот, пока будет браться старый текст для первого exe, заменяться и даваться ответ, то другие в тоже время сделают тоже самое и будет каша.
27. Zireael - 12 Ноября, 2019 - 04:36:02 - перейти к сообщению
 Цитата:
1) и запишет туда, в каждый, например, в первый часы, в другой минуты, третий секунды. это первый exe .
2)создается еще 3 exe, которые это будут читать не общая между собой, кроме главного exe и выводить по отдельности время.

Собрать в exe, назвать server (Отобразить)

Первая программа (Отобразить)

Вторая программа (Отобразить)

Третья программа (Отобразить)
28. 007wan - 12 Ноября, 2019 - 06:38:47 - перейти к сообщению
Спасибо, буду изучать!
29. 007wan - 21 Ноября, 2019 - 05:45:05 - перейти к сообщению
 Zireael пишет:
strcpy(#addr[0], format(address(#c1[0]))); // адрес массива
strcpy(#addr[12], format(address(#c2[0]))); // адрес массива
strcpy(#addr[24], format(address(#c3[0]))); // адрес массива
writebuffer(#addr[0], sizearray(addr)); // записываем в свой буфер адреса массивов

Почему адреса массива 0,12,24?
 Zireael пишет:
readbuffer(#cc[0], 36, w); // прочитали буфер
И почему когда читаем буфер у всех адреса 36, а не 0, 12, 24?
30. Zireael - 21 Ноября, 2019 - 05:54:24 - перейти к сообщению
 Цитата:
Почему адреса массива 0,12,24?

Это не адрес массива, а указатель куда записать адрес массива.

Powered by ExBB FM 1.0 Final