Используйте CTrace :: SetLevel для проекта MFC, использующего общую библиотеку ядра MFC - PullRequest
1 голос
/ 07 ноября 2019

У меня есть проект MFC, использующий общую MFC DLL (MFC140UD.DLL).

Я хочу установить уровень трассировки в моей версии отладки на уровень 4, чтобы получить больше информации о прокачке сообщений.

Но используя CTrace::SetLevel в моем коде, просто устанавливаю уровень отладки для объекта CTrace в моих личных модулях (мой EXE-файл). CTrace объявлено как __declspec(selectany). В экспортированных символах MFC140UD.LIB я не вижу экспорта для класса CTrace или его членов.

Поэтому использование CTrace::SetLevel не влияет на ядро ​​MFC MFC140UD.DLL. Мне всегда нужно устанавливать точку останова внутри atltrace.h и мне нужно изменить статическое значение m_nLevel в отладчике.

Есть ли какой-нибудь трюк для доступа к значению CTrace::m_nLevel внутри DLL ядра MFC из моего внешнего MFCEXE?

Примечание. Также старый AtlTraceTool материал больше не работает и не поддерживается.

...