【发布时间】:2019-06-26 17:32:25
【问题描述】:
我正在为 Win32 编写 Windows CE API 兼容性包装器。它只是将 coredll.dll 调用包装到 Win32 中。所以,我在 Visual Studio 中制作了 coredll 项目,然后我在 .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 说在 COREDLL.DLL 中找不到序号 343。
即使定义了 343 也会出现错误,因此问题似乎出在使用 VC++ 或导出中。
P.S.:我的库目前使用的是 Windows 10 功能,所以在其他版本的 Windows 上可能会抛出一些错误
dumpbin coredll.dll /exports - output
【问题讨论】:
-
试试
dumpbin /exports看看你的 DLL 中实际导出的内容。 -
@JonathanPotter Output of dumpbin
标签: api winapi visual-c++