【发布时间】:2021-03-19 21:13:42
【问题描述】:
所以基本上我正在创建自己的 dll 用于 c# 代码库,使用 c++ 和 c 样式层来导出函数。问题是代码的 c# 部分(实际运行并使用 dll)和我的库本身都使用另一个在全局状态下运行的库(它是 imgui,所以让我们这样称呼它,即使它大部分无关紧要) .
我在自己的 dll 中将 imgui 初始化为某些设置,然后在 c# 代码中使用它的一些功能。目前,我只是将库编译到我的 dll 中,并自己做一个 c# 绑定,通过我自己的 dll 发出对 imgui 的调用。我的问题是我是否可以将 imgui 作为 dll 用于我自己的 dll 和主 c# 程序中,以便共享状态并且初始化步骤为我自己的 dll 和 c# 代码初始化相同的代码。
也就是说,c# 代码调用我自己的 dll 中的一个函数来初始化它,该函数在我的 dll 和可执行文件的公共目录中导入一个 dll (imgui),并初始化 IT。在此之后,导入我的 dll 和 imgui 的主 c# 程序然后调用 imgui 函数来操作它的状态。我的 dll 和主 c# 程序会处理相同的 imgui 状态吗?
【问题讨论】: