Я работаю над приложением MFC, которое годами запутывалось и работало над разными командами разработчиков. Файл resource.h, который содержит все сопоставления команд / сообщений, со временем стал довольно большим и имеет много проблем (например, повторяющиеся идентификаторы). Я не разбираюсь в MFC, поэтому вопрос может показаться довольно глупым ...
В документах MSDN указано, что идентификаторы команд и идентификаторы сообщений не должны быть меньше WM_USER и WM_APP соответственно. Я видел, что большинство идентификаторов команд в resource.h, сгенерированных Visual Studio, начинаются около 100. Разве это не должно вызывать некоторые помехи командам и сообщениям MFC / Windows, которые перекрываются с идентификаторами, определенными приложением? Например, у меня есть идентификатор команды:
#define ID_MY_ID 101
и есть команда windows с таким же идентификатором. Когда MC отправляет эту команду в приложение, она обрабатывается как приложение, определенное ID_MY_ID, и приложение предпринимает ненужные действия. Это возможный сценарий?
Кроме того, существует ли какой-либо сторонний инструмент, который помогает профилировать ресурсы проекта?
Обновление 1:
Появился новый вопрос:
Каков предпочтительный способ добавления новых пользовательских команд в классы приложения? Как я понял, до того как они были добавлены следующим образом: добавьте идентификатор команды в resouce.h, а затем добавьте обработчик карты сообщений в класс обработки.