将c#/WPF GUI围绕c++/cli围绕本机c++包装
本文关键字:c++ 本机 包装 cli 围绕 WPF GUI | 更新日期: 2023-09-27 17:59:10
这是一种复杂的情况。我正在重构c++,它必须同时用作CGI脚本和独立应用程序的核心。
不幸的是,我从大学起就没有写过C++,对C#/Java更熟悉。因此,我将使用WPF作为GUI。根据我的研究结果,这意味着我将成为:
1) 在非托管C++中重构基代码(是为了支持intellisense吗?)
2) 将该基础封装在托管类库中
3) 在C#/WPF GUI中封装步骤2,通过互操作(CLI/CLR)引用它。
我相信,第二步会有很好的记录。然而,我从顶部开始,找不到任何关于如何实例化和使用在托管c++中创建/公开的类的具体内容。
如果我有自己的苦衷(不需要核心效率),我会用c#写整个东西,但我没有这个选择。
有人能为我指明第三步的正确方向吗?这样我就可以开始研究了?可以说,我不想让任何人帮我做作业,但我自己对这个过程的研究毫无结果。
如果将非托管C++类封装在托管CLI/C++对象中,则不需要Interop来调用托管类(Visual C++将在同一库中编译托管和非托管C++)。
只需将托管/非托管混合库引用到您的托管C#应用程序,暴露的托管对象就会像任何普通对象一样工作。
为了获得一个好的起点,请查看这篇文章。