2009-07-16 3 views
1

Если я создаю новый проект win32 C++ в VS2008, я могу использовать Edit &. Продолжайте с ним просто отлично, но с этим унаследованным проектом я работаю с моими попытками использовать/разрешить его сбой.Почему не редактирует и не работает для меня в VS2008 с устаревшим проектом C++ win32?

Вот вещи, которые я проверил:

Инструменты -> Параметры -> Отладка -> Изменить и продолжить -> Включить Изменить и продолжить ВКЛ.

Debug Information Format: Программа базы данных (/ Zi)

Генерация кода -> Включение функции-Level Linking: Да (/ Гр)

Посмотрел на поврежденный файл .ILK. Я не могу найти файлы .ILK - они все еще используются в 2008 году?

Но когда я ступаю в программу, измените следующую строку, и шаг снова, я получаю:

«Этот исходный файл изменился он больше не соответствует ....»

, а не

«Вы хотите отредактировать & Продолжайте применять изменения кода».

Что случилось с этим проектом, что E & C не работает?

ответ

0

Я предполагаю, что у вас есть символы отладки/и т.д. и применение устаревших C++ был скомпилирован с поддержкой этой ...

Если нет, то вы столкнетесь с проблемой, что код не был «инструментированного» для обеспечения ввода альтернативного кода.

Я подозреваю, что изменения формата выходного кода сделают VC++ 2008 несовместимы ... как я сомневаюсь, что Microsoft добавила такую ​​обратную совместимость в (до VS 2008, я не думаю, что они даже сделали его трудно использовать более старые версии .Net без использования конкретного VS)

+1

Удовлетворительно это то, что «Формат отладочной информации: База данных программ». Проект был 2008ifi ed, fwiw, используя средство автоматической модернизации Microsoft. –

0

Это MessageBox

Этот исходный файл изменился. Он больше не соответствует версии файла, используемого для создания отлаживаемого приложения.

, похоже, появляется только в том случае, если я сделал изменение кода на точной строке, где находится точка останова.

Я обнаружил, что могу просто нажать кнопку OK. И когда я затем нажимаю F10 для фактического выполнения строки, которая изменилась, «Редактировать и продолжить» запускает и перекомпилирует код.

После этого, точка останова отключена, хотя (это показывает желтый треугольник с восклицательным знаком):

disabled breakpoint

Для повторного включения, вы можете просто щелкните правой кнопкой мыши на точке останова и выбрать " Место нахождения...«:

right click breakpoint

, который приносит вам этот диалог:

breakpoint location dialog:

, где вам нужно проверить„Разрешить исходный код будет отличаться от оригинальной версии“флажок щелчком мыши. OK и ваша точка останова будет включена снова.