Разработка приложений для Windows Embedded Compact 7 с использованием как управляемого, так и неуправляемого кода

Я собираюсь написать приложение для встроенного устройства с nvidia Tagra2 под управлением Windows Embedded Compact 7. Существуют следующие требования:

  • Запрос данных с интернет-сервера через REST-API с использованием защищенной связи HTTPS.
  • Сопоставьте эти данные с объектной моделью.
  • Отобразите эти объекты в красивом встроенном графическом интерфейсе Silverlight.
  • Выполните некоторые измерения с внешними датчиками и передайте измеренные данные на сервер через REST-API и защищенный HTTPS.

Я знаю, что для Embedded Silverlight нужен неуправляемый код C++. Но писать все приложение на неуправляемом C++ только из-за встроенного графического интерфейса Silverlight для меня было бы кошмаром. Поэтому я думаю о двух альтернативах:

  1. Поместите логику в управляемую C# DLL и получите доступ к ней из неуправляемого исполняемого файла C++, на котором размещен встроенный графический интерфейс Silverlight.
  2. Поместите встроенный графический интерфейс Silverlight в неуправляемую C++ DLL и получите доступ к нему из управляемого исполняемого файла C#, на котором размещена остальная логика и который управляет GUI.

Мои вопросы:

  1. Возможна ли хотя бы одна из вышеуказанных альтернатив?
  2. Какой из них будет предпочтительнее? Я лучше чувствую себя в C#, чем в C++.
  3. Не могли бы вы указать мне ресурсы (книги, учебные пособия, примеры), охватывающие одну из вышеуказанных альтернатив?

1 ответ

Решение

Вариант № 2 определенно работает. Взгляните на этот сайт: http://channel9.msdn.com/Events/TechEd/NorthAmerica/2010/WEM309

Вариант № 1 также должен быть возможен, хотя может показаться, что попытка вызова управляемой DLL из неуправляемого кода может потребовать больше усилий.

Другие вопросы по тегам