Мне нужно перенести консольное приложение C ++ Win32 на WEC7. После того, как я исправил некоторые ошибки сборки и связывания, я смог создать исполняемый файл, который запускается на целевой машине. Но я не мог отладить это приложение с помощью Visual Studio, потому что точки останова не были достигнуты, хотя соответствующие строки были определенно выполнены.
Для дальнейшего изучения моей проблемы я создал 2 новых проекта:
Проект Win32
Проект смарт-устройства Win32
Оба включают следующий код:
#include "stdio.h"
void main(void)
{
int i=0;
while(1)
{
printf("i=%d\n",i);
i++;
}
}
На этом этапе я могу отлаживать оба проекта, один из которых работает на моем ноутбуке с Windows 7, а другой - на моей цели на WEC7. Теперь я изменил платформенное решение с проекта 1 (проект Win32) на свою цель:
скопировал настройки с платформы Win32
установите формат отладочной информации с 4 на / Zi (не знаю, откуда взялось 4)
добавлены некоторые определения препроцессора WEC7
развернул программу на цель, и она работает нормально (счетчик напечатан в консоли), без разницы для проекта 2
пытался отладить программу, но точки останова на счетчике и printf не были достигнуты
Я проверил следующие настройки:
Конфигурация решения установлена на отладку
Оптимизация отключена
Для параметра "Создать отладочную информацию" установлено значение "Да".
сравнил командную строку компоновщика между проектом 1 (моя "преобразованная" версия) и проектом 2 (проект Win32 Smart Device), но они идентичны -> Обновление: На самом деле они совсем не идентичны. Не знаю, что сравнивал в первый раз, но после обновления настроек все заработало.
Я установил следующие обновления Visual Studio:
SP1
Обновление ATL Windows Embedded Compact 7 для Visual Studio 2008 SP1 (http://support.microsoft.com/kb/2483802/de)
Обновление Visual Studio 2008 для Windows Embedded Compact 7 (http://support.microsoft.com/kb/2483802/de)
Мне нужно изменить конкретную настройку? Или мне нужно изменить свой подход?
В основном я занимался проектированием программного обеспечения на основе моделей (Mathworks Embedded Coder, dSPACE Targetlink), поэтому я не знаком с особенностями Visual Studio и WEC7. Буду очень признателен за любую помощь.