Захватить функции из dll с помощью GetProc и войти в них? - PullRequest
2 голосов
/ 19 января 2012

У меня есть следующий код:

  GetNumberOfFormatsFunc getNumberOfFormats = (GetNumberOfFormatsFunc)lib.GetProc("GetNumberOfFormats");
  if (getNumberOfFormats != NULL)
  {
    RINOK(getNumberOfFormats(&numFormats));
  }

Функция GetProc делает это:

GetProcAddress(module, proceName)

, когда вызывается функция 'getNumberOfFormats', отладчик не вступает в нее, дажеесли я нажму 'F11' на нем.Это также не говорит мне, что я пропустил стек вызовов.

Функция существует в отдельном проекте, и она ссылается на DLL-файл этих проектов.Есть идеи, почему я не могу войти в код?

Ответы [ 2 ]

2 голосов
/ 19 января 2012

Visual Studio не может найти символы отладки для вашей DLL. Проверьте, создан ли файл PDB для вашей DLL и существует.

1 голос
/ 19 января 2012

Вы можете проверить информацию о загруженном символе при отладке из Debug-> Windows-> Modules. Щелкните правой кнопкой мыши на нужной DLL и настройте соответствующий символ, если он загружен неправильно.

...