Как установить связь между устройством CE 6.0 (в качестве сервера) и ПК (в качестве клиента) - PullRequest
1 голос
/ 01 октября 2008

Мы находимся в процессе разработки измерительного устройства, которое будет работать CE 6.0 с CF 3.5 на аппаратном обеспечении x86, ПК используется для управления устройство и связано с ним с помощью Ethernet.

Мы хотели бы общаться, используя интерфейсы (используя DCOM (мы знаем, что это не поддерживается по умолчанию в CE6), .NET Remoting или веб-сервисах) вместо используя какой-то (пользовательский) протокол. Вызов методов, определенных в интерфейс намного проще и элегантнее, чем анализ необработанных данных.

Что было бы лучшим решением в этом случае?

Ответы [ 3 ]

2 голосов
/ 01 октября 2008

Если вы используете CE 6 и .NET Compact Framework 3.5, рассматривали ли вы возможность использования Windows Communication Foundation (WCF)? Вы должны написать свой собственный транспорт, но когда это будет сделано, вы сможете относительно легко использовать свои интерфейсы служб.

1 голос
/ 01 октября 2008

У меня был некоторый опыт настройки связи между устройствами CE и ПК, и я использовал пользовательские интерфейсы с использованием winsock (отбрасывая некоторые байты назад и вперед) и пробовал SOAP. В Windows CE 5.0, предоставляемый Microsoft SOAP-сервер отключал наше устройство каждые пару часов или около того. Я потратил много недель, пытаясь понять, что не так, думая, что я поступил неправильно. Итак, я предпочитаю придерживаться winsock сейчас, потому что, по крайней мере, у меня есть шанс узнать, что происходит, и могу это исправить.

Кроме того, устройства CE не всегда являются самыми быстрыми в зависимости от того, какое у вас оборудование. Веб-сервисы требуют некоторых затрат времени и времени на преобразование данных в XML, и это может быть ударом по производительности, который вы себе или не можете себе позволить.

0 голосов
/ 15 октября 2008

Как и в случае со Скоттом, мы пошли по пути использования коммуникаций на основе сокетов по соображениям производительности и стабильности. Код хорошо работает на всех устройствах от Windows CE 2.1 до мобильных 6.0. Я нашел руководство для разработчиков Windows CE, ISBN 0-7821-2414-3, очень полезным для разработки этой функциональности, хотя и в C ++, а не в C #.

...