powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / VB.net способ общения двух приложений
30 сообщений из 30, показаны все 2 страниц
VB.net способ общения двух приложений
    #38886096
Фотография surbanec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здраствуйте. меня интересует способ передачи информации между 2мя приложениями.
первая программа производит функционал и собирает информацию а вторая программа является интерфейсом отображения информации.
есть информацию собирать в переменную и по адрессу читать из памяти 2торой программой.
можно конечно через винсок локально установить запрос-ответ 2х программ.
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886098
Фотография VSVLAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
surbanec,

Винсок - это VB6 вариант, тут же - сокеты, или классы с абстракцией повыше (TcpClient, TcpListener). Это нормальный вариант. Можно и через общую память. Вариантов вообще много
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886118
Фотография surbanec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VSVLAD,

меня интересует работа с памятью. но не нашел примеров.(
просто чтобы 2ая программа читала из памяти значение переменной первой программы.
этого будет достаточно.
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886121
Фотография VSVLAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
surbanec,

Статья для начала на MSDN:
https://msdn.microsoft.com/ru-ru/library/dd997372.aspx
Далее берёте примеры и смотрите. Или гуглите по Shared Memory. На форуме примеры помню обсуждались, правда я для VB6 делал
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886124
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
surbanecменя интересует работа с памятью. но не нашел примеров.(
странно
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886241
Фотография D129
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
surbanecVSVLAD,

меня интересует работа с памятью. но не нашел примеров.(
просто чтобы 2ая программа читала из памяти значение переменной первой программы.
этого будет достаточно.

А почему WCF еще не прозвучал?
У него есть возможность привязки к Named Pipes - Это как раз "память"...
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886243
Фотография VSVLAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
D129,

Думаю автору будет сложнее с ним разобраться... Хотя примеров много
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886247
Фотография D129
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VSVLADD129,

Думаю автору будет сложнее с ним разобраться... Хотя примеров много

Сам не люблю фреймворки. Но WCF - тот случай, когда разобраться стоит...
Тем более у топикастера нечто "собирает информацию" - это явно не простая структура - что же теперь, в 21 веке байтовый массив парсить?
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886269
Фотография VSVLAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
D129,

Не обязательно байтовый массив из текстовых данных) в шаред мемори можно будет запихнуть сериализовый класс - кстати такой способ видел где-то в примерах, вроде на том же мсдн
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886273
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VSVLADДумаю автору будет сложнее с ним разобраться...
Всегда интересовал вопрос - что значит разобраться в WCF? Пометить метод атрибутом, эндпоинт, биндинг, бихавиор... усё?
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886274
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
D129У него есть возможность привязки к Named Pipes - Это как раз "память"...
ты об этом серьёзно или как?
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886281
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилD129У него есть возможность привязки к Named Pipes - Это как раз "память"...
ты об этом серьёзно или как?
Есть там такая хрень. Правда сам не юзал, не знаю.
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886287
Фотография D129
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot EDUARD SAPOTSKI]VSVLADПометить метод атрибутом, эндпоинт, биндинг, бихавиор... усё?

и их комбинации.
:-)
То ли дело сокет - открыл, байт послал, байт поймал, закрыл...
:-)
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886293
Фотография D129
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилты об этом серьёзно или как?
Ну использовать именно "память" - зачем? только для скорости... А вот это тоже очень быстро.
Может и хватит - на нужды заказчика.
:-)
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886296
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MemoryMappedFile - создал/открыл, получил MemoryMappedViewAccessor

прочитал значение/структуру/массив, записал
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886304
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
D129,

я по поводу 'Named Pipes - Это как раз "память"'
Named Pipes это не память, а сокет (не в смысле *nix, конечно, но аналогия близка)
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886338
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKI,

ну наверное для начала, нужно прочитать, что это такое.
я вот ни разу не пользовался WCF и даже не знаю, как там, что работает.
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886366
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
требование читать что-то "из памяти" я так понял это рудиментарный подход, типа, чтобы быстро.

Все от задачи зависит, но можно еще заюзить SQLite, MSMQ, SignalR на худой конец и т.д.
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886371
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Winnipuhно можно еще заюзить SQLite, MSMQ, SignalR на худой конец и т.д.
... txt, xml, реестр, виндовые службы, облака...
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886381
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKIWinnipuhно можно еще заюзить SQLite, MSMQ, SignalR на худой конец и т.д.
... txt, xml, реестр, виндовые службы, облака...

э-не, это уже обратно в будущее, в 90-е.

А, еще Redis какой-нибудь, Mongo и т.д..
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886385
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно задействовать всё что угодно, кто мешает владеть всеми вышеперечисленными технологиями хотя бы на базовом уровне?
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886388
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропил,

ну у каждой технологии свои плюсы и минусы. В таком случаи составляют таблицу критериев, проводят анализ и делают выбор. Если по уму :) но будет как обычно, от балды аля "Берем вот это и будь, что будет" :)
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886429
Фотография D129
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes проводят анализ и делают выбор. Если по уму :)
Я вот сейчас работаю - вроде как делали "по уму".
И что сделали - WFP взяли, а WCF - нет. Реализовали протокол связи более абстрактный - который стандарт для предметной области. Ну как бы "все его используют"... А он примитивный - и всю сериализацию - десерелиазацию надо писать ручками, при добавлении нового сервиса (каждой новой функции!)....
А вот подумать о другом решении - что общий протокол можно использовать для связи с внешними системами, а внутри - только WCF - не ума не хватило (их там дофига умных было) , а типа прозрачности - кто-то сказал "а если " - и не нашлось глупых возразить...
Есть еще мода такая - типа "минимум разных аппликаций в системе - легче их поддерживать" . И тут вроде как не поспоришь, но ведь если компонент делает не свою работу, и не использует удобства - то поддерживать его труднее, чем пять специализированных и внутренне простых.
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886459
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
D129А вот подумать о другом решении - что общий протокол можно использовать для связи с внешними системами, а внутри - только WCF - не ума не хватило
а может как раз хватило
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886467
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
surbanecпервая программа производит функционал и собирает информацию а вторая программа является интерфейсом отображения информации.
Мне для указанных целей с головой хватает mailslot-ов. Данная технология абсолютно безобидна.
Сообщения можно слать в форме строк типа
command=mycommand;text=mytext
и элементарно парсить при приеме.
Если нужно двунаправленное общение, вешаешь по одному mailslot на каждую прогу.
Mailslots

Если интересно, примеры моего кода можешь найти в этом разделе, а также в VB6 и C++ разделах. Поиск по слову mailslot и имени автора.

http://www.sql.ru/forum/actualsearch.aspx?search=mailslot&sin=0&bid=4&bid=34&bid=21&bid=22&a=???????77&ma=0&dt=-1&s=1&so=1
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886472
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если mailslot заинтересовал, то здесь весь необходимый код для VB.Net

17247080
17256888
17257015
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886484
Фотография D129
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилD129А вот подумать о другом решении - что общий протокол можно использовать для связи с внешними системами, а внутри - только WCF - не ума не хватило
а может как раз хватило

Ну да. Все кассовые аппараты "а вдруг" захотят перевести на линукс, и микрософтовская технология провиснет...
:-)
Нет, там как раз дофига теоретиков, и мало практиков.
Есть такая важная вещь - как сложность разработки. В WCF - ну проще уже врятли можно. Можно не знать, кто и как будет доставлять - отдал класс, получил класс.
При реализации голого RTI (Ретайл трансфер что-то там) приходится писать ручками четыре класса и один файл конфигурации.
Все функции называются Execute.... дальше ловится имя метода в параметре и...

Что касается внешних систем (SAP и ему подобные) - то они по определению будут связываться с самым высоким уровнем, и техническая возможность послать обновление прямо на конкретную кассу - это никогда не будет разрешено по соображениям безопасности...

В контексте топика - я бы сказал, если "через память" - это то, что хочет топикастер, то не сделать ли тогда одну аппликацию, и передавать данные по ссылке?
:-)
Или у него будет несколько "клиентов" этого сервера, который собирает информацию? Ну и это тоже возможно - открывай окошки сколько нужно....
:-)
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886549
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
D129,

жаль, топикстартер куда-то пропал...
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38886772
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
EDUARD SAPOTSKIWinnipuhно можно еще заюзить SQLite, MSMQ, SignalR на худой конец и т.д.
... txt, xml, реестр, виндовые службы, облака...
Про переменные среды забыли!
...
Рейтинг: 0 / 0
VB.net способ общения двух приложений
    #38887644
Фотография VSVLAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2Про переменные среды забыли!
Помнится, что это один из стандартных способов передачи параметров CGI приложению. А он отдаёт данные через стандартный поток вывода... Думаю автор пошёл читать книжки, наверняка.
...
Рейтинг: 0 / 0
30 сообщений из 30, показаны все 2 страниц
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / VB.net способ общения двух приложений
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]