2009-10-12 4 views
0

Возможно ли создать небольшую программу, которая будет работать без перекомпиляции и без эмуляторов, как на Windows CE 6, так и на Windows XP SP3?Работает на Windows CE 6 и Windows XP

Насколько мне известно, это невозможно. Исходный код необходимо перекомпилировать для целевой платформы. Однако производитель оборудования для встроенных плат утверждает иное.

Приложение не является чем-то сложным, простым инструментом сравнения, анализирующим операции с плавающей запятой, тиками ЦП и т. Д. И отображением результатов на простом графическом интерфейсе.

+1

Как дополнение к этому, я теперь нашел, почему производитель сказал иначе. Они поставляли .NET-приложения, которые могут работать на обеих платформах, если на них установлена ​​среда .NET. (У меня не было .NET в моих изображениях CE) – Dave

ответ

1

Нет, невозможно. Оба используют формат PE, но тип машины отличается. Следовательно, любой PE-файл будет работать на одной архитектуре.

Для сравнения, Apple OSX поддерживает «жирные» двоичные файлы, которые могут поддерживать несколько типов машин (посредством агрегации единый двоичный код действует как контейнер).

2

Приложения .NET Compact Framework могут запускаться на настольных компьютерах с полной платформой .NET Framework, если они имеют доступ только к общим частям обеих фреймворков, хотя их пользовательский интерфейс не может быть модернизирован, чтобы выглядеть так, как при разработке приложения для настольных ПК.

Другими словами, если вы пишете его ориентации на .NET CF для CE, вы можете запустить тот же двоичный файл на компьютере с ХР

0

В последний раз я использовал Windows CE была версия для x86. При тщательном кодировании вы можете определить, работаете ли вы под Windows CE или «настоящими» Windows, и выполняете соответствующий код для того или другого.

Ответ .Net - это обман. Половина компиляции - от вашего языка программирования до IL и не нуждается в перекомпиляции (если вы осторожны). Половина компиляции JITting и всегда нуждается в перекомпиляции.

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