К сожалению, две платформы не совместимы в двоичном формате *, но не позволяйте этому останавливать вас.
Создайте в своем решении два проекта (один обычный проект библиотеки классов и один проект библиотеки классов Compact Framework) и добавьте все файлы из одного проекта в другой как ссылки , нажав «Добавить | Существующий» Файл »и затем установите флажок« Добавить как ссылку »в диалоговом окне файла.
Теперь у вас есть только один набор исходного кода для обслуживания, но ваше решение будет создавать обе библиотеки DLL одновременно.
Если у вас есть какой-либо код внутри файла, который специфичен для каркаса рабочего стола и не работает на компактной платформе, вы можете заключить его в директиву компилятора (по крайней мере, в C #) следующим образом:
#if PocketPC
// mobile-specific stuff here
#else
// desktop-specific stuff here
#endif
- Обратите внимание, что хотя вы не можете использовать двоичные файлы для настольных систем на мобильной платформе, обратное неверно. Компактные исполняемые файлы каркаса могут запускаться на рабочем столе. Однако я вполне уверен, что настольное приложение не может ссылаться на компактную сборку фреймворка (хотя я никогда не пробовал).