Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/164.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 将DLL的方法应用到其他方法中_C++_Dll_Export_Executable - Fatal编程技术网

C++ 将DLL的方法应用到其他方法中

C++ 将DLL的方法应用到其他方法中,c++,dll,export,executable,C++,Dll,Export,Executable,我在同一个解决方案中有3个DLL和一个win32项目。win32项目应该使用DLL的方法和类,DLL应该使用其他DLL的方法 我该怎么做?我应该在其他DLL中包含每个DLL的.h文件吗 另外,我在一个DLL中有一个初始化DLL头文件中定义的类的函数,如何在win32项目中调用它,使它创建实例,但对其他DLL也有效?我不太明白您的问题是什么。您可以使用头文件和库文件链接到DLL。我想你已经知道了 如果希望在不同DLL中的代码之间共享实例,则需要像导出类和函数一样导出该实例。可以直接导出符号,也可以

我在同一个解决方案中有3个DLL和一个win32项目。win32项目应该使用DLL的方法和类,DLL应该使用其他DLL的方法

我该怎么做?我应该在其他DLL中包含每个DLL的.h文件吗


另外,我在一个DLL中有一个初始化DLL头文件中定义的类的函数,如何在win32项目中调用它,使它创建实例,但对其他DLL也有效?

我不太明白您的问题是什么。您可以使用头文件和库文件链接到DLL。我想你已经知道了

如果希望在不同DLL中的代码之间共享实例,则需要像导出类和函数一样导出该实例。可以直接导出符号,也可以提供一个函数来获取对实例的引用


您似乎在说DLL A指的是DLL B,反之亦然。在这种情况下,尽管您在评论中声明相反,但将它们合并到一个DLL中会更容易。

您能否解释一下在这些DLL中传播此代码的原因。它们听起来都是相互关联的,为什么要分开呢?如果我分开dll,我有一个用于网络dll之类的特定对象,另一个用于3d引擎之类的特定对象,你需要它们能够独立运行吗?你有没有自己部署过?顺便说一句,请在你的评论中加入@someone's_name,这样他们就会得到通知。否则你只是在自言自语。@David:祝贺你成为10k代表@安德烈亚斯谢谢你!受信任的用户何时添加到可用权限?我还以为一旦你跑完10公里,就没有别的可追了@David是的,这是另一个问题,我在win32项目中初始化了一个实例,我将在DLL之间共享该实例。让这些DLL导出一个传递给该实例的引用的函数。当主exe启动时,在每个DLL中调用该函数。然后该函数会记住引用,它们都引用同一个实例。完成任务。@Stefano我最后一次评论中说的话,你有什么不明白的?您可以通过一个函数调用在两个模块(从exe到dll)之间进行通信,该函数调用可以跨边界传递共享引用。为什么我要花时间为您编写代码示例?你甚至不能投弃权票@David我不会因为回复不完整而放弃投票,你限制了你的发言,说我应该创建e函数。。。如果我在我的问题中问我如何才能做到这一点,我希望得到一个简单的示例代码,而不是一个冒犯性的评论。我还记得你,这是一个公共场所,如果你对帮助不感兴趣,用户就不会帮助你them@Stefano我认为你不应该期待任何事情!你应该感激人们放弃他们的时间来帮助你。碰巧我喜欢这样做,但听起来你似乎认为这是理所当然的。无论如何,由于您已经创建了应用程序和DLL,而且您似乎知道如何链接.lib文件等,所以我认为您不需要代码示例。这些代码都是您自己编写的,还是您正在使用其他人设计的体系结构?