【问题标题】:Ordinal 343 not found Win32 VC++ exports未找到序数 343 Win32 VC++ 导出
【发布时间】: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++


【解决方案1】:

很奇怪,但原因是下面的exports.def:

DSA_Clone     @1853 

和WinAPI有关,所以我不太清楚原因。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-03-27
    • 1970-01-01
    • 2015-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-24
    • 1970-01-01
    相关资源
    最近更新 更多