![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| Буратиныч |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 15.3.2011 Репутация: нет Всего: нет |
Каким образом можно передать данные (объекты структур или ссылки на них, массивы или просто переменные) из одной программы в другую? Могу предположить, что надо покопаться в теме Marshal или Socket, но не уверен, да и сходу реализовать не просто. Буду благодарен за простой пример: в одной программе что-то пишется в textblock или консоль, а в другой тут-же отображается в textbox, при этом текстовый файл в качестве посредника не используется. Так думаю легче будет понять.
|
|||
|
||||
| kiler4747 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 28.2.2011 Репутация: нет Всего: нет |
Используйте wcf
|
|||
|
||||
| Certain |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 235 Регистрация: 18.6.2008 Где: Moscow Репутация: 1 Всего: 4 |
Как вариант Named Pipes... Хотя и в WCF такой вариант тоже реализован
--------------------
Работа программиста и шамана имеет много общего - оба боpмочyт непонятные слова, совершают непонятные действия и не могут объяснить, как оно работает. |
|||
|
||||
| AntiInt |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 145 Регистрация: 15.5.2009 Репутация: нет Всего: нет |
лучшей вариант это wfc
можно и старым-добрым remouting-ом обойтись |
|||
|
||||
| Буратиныч |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 15.3.2011 Репутация: нет Всего: нет |
а если отправляющий клиент на С/С++, а принимающий сервер на С#, то что лучше?
|
|||
|
||||
| Буратиныч |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 15.3.2011 Репутация: нет Всего: нет |
Имеет ли смысл переписать этот пример используя модификатор async?
|
|||
|
||||
| Certain |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 235 Регистрация: 18.6.2008 Где: Moscow Репутация: 1 Всего: 4 |
А смысл? Там и так всё асинхронно работает
BeginWaitForConnection не останавливает вызывающий поток. Все методы, начинающиеся с Begin и End являются асинхронными в Framework Это сообщение отредактировал(а) Certain - 30.1.2013, 07:10 --------------------
Работа программиста и шамана имеет много общего - оба боpмочyт непонятные слова, совершают непонятные действия и не могут объяснить, как оно работает. |
|||
|
||||
| Буратиныч |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 15.3.2011 Репутация: нет Всего: нет |
Да я перенёс в свой WPF проект серверную часть. Дебаггер пишет, что коннект есть, но сообщения не поступают.
Также в этой части Invoke подсвечивается красным и выдаётся ошибка Cannot resolve symbol 'InvokeRequired'. Может ему каких-то using-ов не хватает?
|
|||
|
||||
| Certain |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 235 Регистрация: 18.6.2008 Где: Moscow Репутация: 1 Всего: 4 |
Может проект сюда скинете...
--------------------
Работа программиста и шамана имеет много общего - оба боpмочyт непонятные слова, совершают непонятные действия и не могут объяснить, как оно работает. |
|||
|
||||
| Буратиныч |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 15.3.2011 Репутация: нет Всего: нет |
||||
|
||||
| Certain |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 235 Регистрация: 18.6.2008 Где: Moscow Репутация: 1 Всего: 4 |
Поправил Ваш пример.
Осталось только из полученного массива нулевые байты удалить, а так всё принимает и отправляет. Клиент там же Присоединённый файл ( Кол-во скачиваний: 5 )
PipesServerWPF.rar 61,19 Kb--------------------
Работа программиста и шамана имеет много общего - оба боpмочyт непонятные слова, совершают непонятные действия и не могут объяснить, как оно работает. |
|||
|
||||
| Буратиныч |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 15.3.2011 Репутация: нет Всего: нет |
Спасибо. А что именно я там не доделал? Всё-таки, если заменить эти конструкции на лябда-выражения и await/async, будет ли пример более проще и понятнее. Сейчас не очень много литературы по C# 5.0, поэтому не знаю как правильно сделать. |
|||
|
||||
| Certain |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 235 Регистрация: 18.6.2008 Где: Moscow Репутация: 1 Всего: 4 |
А где Вы хотели использовать лямбда-выражения? И await/async?
--------------------
Работа программиста и шамана имеет много общего - оба боpмочyт непонятные слова, совершают непонятные действия и не могут объяснить, как оно работает. |
|||
|
||||
| Буратиныч |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 15.3.2011 Репутация: нет Всего: нет |
Не знаю. Пока только въезжаю в тему. А изменения подскажите в чём заключались? Добавлено через 7 минут и 59 секунд А, получается принципиально другая команда должна быть? txtForReceiving.Dispatcher.Invoke(delegate {txtForReceiving.Text = message; }); |
|||
|
||||
| Certain |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 235 Регистрация: 18.6.2008 Где: Moscow Репутация: 1 Всего: 4 |
Да, напрямую обращаться к UI из другого потока нельзя.
Можно и так
Добавлено через 9 минут Хорошая статья await/async --------------------
Работа программиста и шамана имеет много общего - оба боpмочyт непонятные слова, совершают непонятные действия и не могут объяснить, как оно работает. |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |