gpt4 book ai didi

c++ - 如何在 Visual C++ 6 程序中正确修改 .def 文件?

转载 作者:行者123 更新时间:2023-11-28 03:51:23 26 4
gpt4 key购买 nike

我正在维护一个使用 .def 文件处理函数导出的 C++ 6.0 项目。我必须将一对实例方法添加到类定义中,但我不知道如何将这些方法添加到 .def 文件中以便将它们导出。 .def 文件中 EXPORTS 部分下的每一行看起来都像 ?MethodName@ClassName@@AStringOfLetters 可能有一个 @Z 无缘无故地加在最后.我假设字母串在某种程度上对应于方法的原型(prototype),但我找不到任何描述编码的文档。我添加的方法没有与任何现有方法完全匹配的原型(prototype)。

假设我的新方法原型(prototype)如下所示:

  short ClassName::Foo1(const short, const unsigned int, const short, const unsigned int *);
short ClassName::Foo2(const short, const unsigned int, short *, unsigned int *);

我需要在 .def 文件中添加什么才能使我的链接器满意并实际导出方法?

最佳答案

您正在导出 C++ 损坏的符号。我会在它们前面临时添加一个 __declspec(dllexport),然后将 DLL 加载到 Dependency Walker 之类的东西中,或者使用 dumpbin 查看导出的内容。这将为您提供新函数的损坏符号,然后您可以将其添加到 .def 文件并删除 __declspec

关于c++ - 如何在 Visual C++ 6 程序中正确修改 .def 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5372344/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com