2013-04-22 3 views
-1

Я пытаюсь создать программу для управления основными функциями компьютера с помощью метода server/client. Мне просто нужно отправить строку с сервера клиенту и наоборот. Каждый пример, который я нашел, действительно старый и больше не работает, или плохо объясняется, или находится на C#.Visual basic.net Отправить строки между компьютерами по локальной сети

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

По существу мне нужен способ отправки текста с одного IP/порта на другой в архитектуре сервера/клиента.

ответ

0

Ключ к решению вашей проблемы, вероятно, находится здесь: «У меня почти есть рабочий пример, как есть, но я столкнулся с проблемой потоковой передачи, где он не позволит мне изменять элементы в пользовательском интерфейсе после того, как я открыл мой поток для подключения от сервера к клиенту или клиенту на сервер. "

Вы не можете получить доступ к элементам управления (элементам пользовательского интерфейса), созданным на одном потоке, напрямую из другого потока. Поэтому, если у вас есть другой поток, и вы хотите обновить элемент в пользовательском интерфейсе, вам нужно использовать Control.BeginInvoke Method.

Вы не размещали ни одного кода, поэтому я не буду пытаться дать вам пример, который может быть совершенно бесполезным в вашем случае, но здесь есть хорошая статья о MSDN - How to: Make Thread-Safe Calls to Windows Forms Controls. Это для Windows Forms, орех, принципы одинаковы для любого приложения.

+0

Итак, я написал очень скелетную структуру моего кода UDPclient. Сейчас он не работает, и я не знаю, почему. Исходный код (нажмите Файл> скачать) https://docs.google.com/file/d/0B2sn5IyNeCIESUV4cE91Sm81Vzg/edit?usp=sharing – Postman

Смежные вопросы