![]() |
1
12
您需要添加以下内容:
以避免功能损坏。 您可以考虑编写两个简单的C函数:
通过使用这些函数,您可以在以后添加/更改对象创建/删除的功能。这有时被称为工厂。 |
![]() |
2
5
在找到解决方案 http://www.codeproject.com/KB/DLL/XDllPt4.aspx 谢谢你们的努力,伙计们和女孩们。 |
![]() |
3
2
我通常声明一个接口基类,在我的应用程序中使用这个声明,然后使用loadLibrary、getProcAddress来获取工厂函数。该因子始终返回接口类型的指针。 这是一个实际的例子, exporting an MFC document/view from a DLL ,动态加载 |
![]() |
4
2
退房 this question . 基本上,有两种方法。您可以使用_dllexport标记类,然后与导入库链接,将自动加载dll。或者,如果您想自己动态加载dll,可以使用@Titanae建议的工厂函数思想。 |
![]() |
5
1
dllexport/dllimport工作正常,将它放在头文件中类名之前,您就可以开始了。 通常,您希望在dll中使用dllexport,在exe中使用dllimport(但您可以在任何地方都使用dllexport,它工作正常,执行“正确”操作会使加载速度稍快)。 显然,这是为了链接时间编译。您可以使用/delayoad链接器指令使其“动态”,但这可能不是您想要的主题行。 如果你真的想要一个加载库样式加载,你将不得不用C++“C++”函数包装你的C++函数。问题是因为名字有误,你可以输入完全有误的名字,这样就可以了。 解决方法通常是提供一个C函数,该函数返回指向正确类的指针-com的工作方式是这样的,因为它从一个dll中导出4个C函数,该dll用于获取dll中对象内部的接口方法。 |
![]() |
PHPLover · “支持PHP扩展或功能的端口”实际上是什么意思? 11 月前 |