Порядковый 343 не найден Win32 VC ++ экспорт - PullRequest
0 голосов
/ 10 марта 2019

Я пишу оболочку совместимости API Windows CE для Win32. Он просто оборачивает вызовы coredll.dll в Win32. Итак, я сделал coredll проект в Visual Studio, а затем сделал много экспортов в файл .def, как здесь:

    WaitForSingleObject @497
    WaitForMultipleObjects @498
    SuspendThread @499
    ResumeThread @500
    SetThreadContext @502
    ReadProcessMemory @506
    WriteProcessMemory @507

Все программы Windows CE используют порядковый номер для вызова функции, поэтому я определил соответствующий порядковый номер в файле .def для каждой функции. Смотрите полный исходный код здесь: https://github.com/feel-the-dz3n/WinCeCompatLayer

Но когда я пытаюсь связать эту библиотеку и вызвать функцию из нее, Windows говорит, что порядковый номер 343 не найден в COREDLL.DLL.

Error screenshot

Ошибка появляется, даже если определено 343, поэтому похоже, что проблема в использовании VC ++ или в экспорте.

P.S .: Моя библиотека в настоящее время использует функции Windows 10, поэтому она может вызвать некоторые ошибки в других версиях Windows

dumpbin coredll.dll /exports - выход

1 Ответ

0 голосов
/ 26 июня 2019

Странно, но причина была в строке файла export.def ниже:

DSA_Clone     @1853 

Это связано с WinAPI, поэтому я не знаю причину.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...