У меня есть такой заголовочный файл:
#ifndef __GEN_NOTE_MARKERS_TO_DEVELOPERS_HPP__
#define __GEN_NOTE_MARKERS_TO_DEVELOPERS_HPP__
#ifdef _DEBUG
// macros for turning a number into a string
#define STRING2(x) #x
#define STRING(x) STRING2(x)
#ifdef TRIAGE_MESG_AS_WARNING
#define TRIAGE_TODO_TAG(description) __pragma(message(__FILE__"("STRING(__LINE__)") : warning : TRIAGE TO-DO: " STRING(description) ))
#define TRIAGE_FIXTHIS_TAG(description) __pragma(message(__FILE__"("STRING(__LINE__)") : warning : TRIAGE FIXTHIS: " STRING(description) ))
#else
#define TRIAGE_TODO_TAG(description) __pragma(message(__FILE__"("STRING(__LINE__)") : message : TRIAGE TO-DO: " STRING(description) ))
#define TRIAGE_FIXTHIS_TAG(description) __pragma(message(__FILE__"("STRING(__LINE__)") : message : TRIAGE FIXTHIS: " STRING(description) ))
#endif
#else
#define TRIAGE_TODO_TAG(description)
#define TRIAGE_FIXTHIS_TAG(description)
#endif
#endif // __GEN_NOTE_MARKERS_TO_DEVELOPERS_HPP__
, который выводит примечания на панель вывода в Visual Studio 2005. Когда определено «TRIAGE_MESG_AS_WARNING», Visual Studio соберет эти сообщения и отобразит их как предупреждения в списке ошибок. Это происходит потому, что текстовый формат соответствует предупреждению. Однако я не хочу, чтобы они все время отображались как предупреждения, я бы предпочел, чтобы они отображались на панели сообщений в списке ошибок.
Как вы форматируете строки, которые вы помещаете в
«Окно вывода», так что Visual Studio
автоматически покажет их в
Вкладка «Сообщения» в «Списке ошибок»
окна?
Формат, который я настроил для сообщений в приведенном выше коде, выглядит как сообщение из другого вывода, но не получается таким же образом.
Сотрудник предположил, что мне может понадобиться написать «пользовательский объект автоматизации» для записи на панель «Сообщения». Это кажется болезненным, особенно потому, что в конечном итоге можно просто вводить записи на панели ошибок и на панели предупреждений путем правильного форматирования. Это возможный проспект?
Мы используем неуправляемый C ++, поэтому мы не можем полагаться только на управляемые (.NET) инструменты. Мы не хотим расширять VS крючками.