如何将C++GDI代码放入C#项目中

how to get C++ GDI code into a C# project

本文关键字:项目 代码 C++GDI      更新时间:2023-10-16

我有两个项目,一个是C#项目,它拥有我所需要的大部分内容,另一个是GDI C++项目,它有一个控件和一些我想放入C#项目的逻辑。

我是否以某种方式将GDI C++项目包装为控件?是否有一些更新的技术我应该更新GDI代码以使用(不确定GDI与GDI+有何不同)。

刚开始研究这个问题,不知道如何将两者结合起来。

这取决于c++代码的复杂性。

如果它很大或很复杂,那么最好将它包装起来并从c#中使用(例如,将它包装在COM包装器中,甚至将它作为一个单独的进程运行,只需在主机中显示其窗口。

如果它不是太复杂,那么将它移植到c#可能会更容易、更干净。很多用于逻辑的c++代码都很容易移植到c#,而且GDI和GDI+之间几乎没有什么区别,所以我希望移植是非常直接的。

决定因素可能只是你自己对使用com或获得GDI+来呈现相同内容的信心。