gpt4 book ai didi

C# WinForms 程序,能够为其制作 C++ 插件

转载 作者:行者123 更新时间:2023-11-28 08:26:57 25 4
gpt4 key购买 nike

我正在创建一个针对 .NET 3.5 框架的 C# winforms 应用程序。我希望这个程序能够有插件。希望插件可以在非托管 C++ 中创建。如果没有直接的方法在 C++ 中制作插件,那么我想要知道最简单的插件框架,它允许我为 C++ 代码制作一个简单的 C# 包装器并将其变成一个插件。

我一直在研究一些可能的插件框架,我想知道你的家伙对此有何看法。

  • System.Addin 命名空间
  • MEF
  • Mono.Addins

附加信息:我希望这是万能的。例如,我希望 c# 程序能够处理用 C# 编写的插件,用 C++ 编写的带有 C# swig 绑定(bind)的 sdk,可能是一些直接的非托管 C++ 代码,也可能是一些 python。同样,可能需要某种包装器。

另外我想指出,我以前从未接触过插件,所以这对我来说是全新的。

最佳答案

好吧,您可以只定义希望插件实现的方法,然后使用 LoadLibrary 加载插件 dll,并使用 GetProcAddress 获取指向所需方法的指针。只需编写一个小的包装类,它将在 c'tor 中获取 dll 名称并在 .Net 中公开所需的接口(interface),但会将所有调用转发给 dll。

这个包装器不需要任何框架。

关于C# WinForms 程序,能够为其制作 C++ 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3713247/

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