VC++链接器问题

发布于 2024-12-19 19:52:11 字数 323 浏览 1 评论 0原文

我在一个项目中使用草莓 Perl 和 GDI+。一切都已正确编译,我可以在调试模式下运行 perl 脚本。但是,当我构建项目的发行版本然后运行它时,它会给出以下错误

The procedure entry point GdipGetImageThumbnail could not be located in the
dynamic link library perl512.dll.

,并且应用程序在说“OK”时退出。我无法理解为什么系统在 gdiplus.lib 中定义的 perl512.dll 中搜索 API GdipGetImageThumbnail 。

I am using strawberry perl and GDI+ in a project. Everything is getting compiled properly and I am able to run perl scripts in the Debug mode. But when I am building a release version of my project and then running it, it gives following error

The procedure entry point GdipGetImageThumbnail could not be located in the
dynamic link library perl512.dll.

and application quits on saying OK. I am unable to understand why the system is searching for the API GdipGetImageThumbnail in perl512.dll when it is defined in gdiplus.lib.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

三生一梦 2024-12-26 19:52:11

如果您使用的是视觉工作室。右键单击相关项目。转到属性并从链接器分支开始,检查调试和发布配置的所有字段是否相同(在适当的情况下)。如果不成功,请检查 c/c++ 和配置属性。检查项目依赖项/引用也是值得的。如果调试版本可以工作,那么发布版本就没有理由不工作。

检查跨 DLL 引用的任何类是否被定义为外部类也是明智之举。这可能有用:http://msdn .microsoft.com/en-us/library/799kze2z(v=vs.80).aspx#3

希望这会有所帮助。

If you are using visual studio. Right click the projects in question. Go to properties and starting with the linker branch, check that all the fields are the same (where appropraite) for both Debug and Release configurations. If no success, check c/c++ and configuration properties. It would also be worth while to check the project dependencies / references. If the debug version is working, there is no reason for the release to not work.

It may also be wise to check that any classes referenced accross DLLs are defined as external. This may be useful : http://msdn.microsoft.com/en-us/library/799kze2z(v=vs.80).aspx#3

Hope this helps.

涫野音 2024-12-26 19:52:11

我的感觉告诉我,您滥用了 AFX_EXT_CLASS 宏。

http://support.microsoft.com/kb/128199

如果您有扩展 DLL 来调用或派生自您的
自己的扩展 DLL,然后从 MFC 类派生,您必须
使用您自己的预处理器符号

My senses tell me that you are misusing the AFX_EXT_CLASS macro.

http://support.microsoft.com/kb/128199

If you have extension DLLs that call or derive from classes in your
own extension DLLs, which then derive from the MFC classes, you must
use your own preprocessor symbol

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文