У меня есть некоторые экспортированные из DLL функции, которые я пытаюсь вызвать изнутри окна непосредственного доступа VS2017. Функции в заголовке C ++ выглядят так:
namespace ma
{
bool MODEL_DECLSPEC ClearParameter();
bool MODEL_DECLSPEC GetResult();
:
}
Однако, когда я останавливаюсь на точке останова в моем коде и печатаю в непосредственное окно
ma::GetResult()
Возвращается
identifier "ma" is undefined
Я могу вызывать функции в пространстве имен «std», но не в своем собственном пространстве имен?
РЕДАКТИРОВАТЬ: Я сделал еще несколько тестов, и в окне сразу интерпретируется пространство имен «ma» и вызывает мою экспортированную функцию DLL, когда моя точка останова находится в области пространства имен «ma» внутри DLL. Это довольно ограничивает отладку, так что я уверен, что что-то упустил?
Обнаружил, что это не имеет ничего общего с пространством имен. Собственный отладчик не будет смотреть за пределы своего текущего модуля: «Немедленное окно не может выполнить функцию, экспортированную dll»
Обсуждаются некоторые обходные пути Вот
Других решений пока нет …