Member 12697037 Ответов: 2

Передача строки между 2 приложениями VB


Привет, ребята, я новичок в кодировании.
Я много искал пример и не могу найти то, что мне нужно.
Большинство примеров, которые я нашел, первое приложение выполняет приложение 2 и передает текст.
Мне нужно, чтобы приложение 2 открывалось все время, и мне нужно, чтобы приложение 1 отправляло в приложение 2 только данные.

кто-нибудь поможет??

Что я уже пробовал:

Приложение Отправителя:
Dim strText как строка
strText = " привет"
Оболочка("c:ReceiverX.exe" & strText, [vbNormalFocus])

Приложение Riceiver:
Dim strText2 как строка
strText2 = команда()
Этикетка 1.Text = strText2

Afzaal Ahmad Zeeshan

Это два разных приложения или просто две разные страницы?

Member 12697037

2 различных приложения exe

Afzaal Ahmad Zeeshan

Затем вы можете сохранить строковые данные в файл и извлечь их из него.

Member 12697037

Проблема в том, что будет много отправителей и только один получатель, так что, как я знаю, если один отправитель получит доступ к этому файлу данных, другой отправитель не получит доступа. Или я ошибаюсь?

Задержка очень важна для меня, мне нужно, чтобы приемник принимал информацию как можно быстрее.

Afzaal Ahmad Zeeshan

Пожалуйста, смотрите мой ответ, Решение 1. учтите, что отправители-это клиенты, а получатель-сервер; используется для сохранения данных.

Member 12697037

я видел ваш с Гриффом ответ, проблема в том, что мои знания в области кодирования плохи.
Мне нужен какой-то пример, чтобы увидеть.
Значит, легкого пути нет ?

Ralf Meier

Я бы тоже сделал это таким образом (сокет-коммуникация).
Есть много образцов, которые можно найти в интернете ... и, конечно же, в CodeProject.
Мой совет был бы таков : просто попробуйте и улучшите свои знания, делая это ...

2 Ответов

Рейтинг:
6

Afzaal Ahmad Zeeshan

Начиная с комментариев к вопросу. Вы абсолютно правы. Файлы блокируются, когда программа или процесс потребляет их или использует. Это оставит только одну программу для доступа к файлу за один раз, а остальным придется ждать, пока ресурс не будет освобожден.

Однако, поскольку вы упомянули много отправителей и только один получатель, Я хотел бы предложить вам построить эти приложения в Клиент-серверная модель[^] основа. Это позволит вашим приложениям запросите данные и сервер вернет данные; таким образом, только сервер должен получить доступ к файлу вообще, и не будет никаких блокировок, о которых нужно беспокоиться (если только ваш сервер не работает в асинхронном режиме).


Рейтинг:
19

OriginalGriff

См. класс сокета: Класс Socket (Системы.Нет.Розетки)[^]