c# - 将 C++ 程序加载到 C# AppDomain

标签 c# c++ .net appdomain

正如标题所说,我想使用 C# 将 C++ 程序加载到 C# AppDomain 中。

我不能使用 AppDomain.ExecuteAssembly(),因为它必须是 C# 或其他非 C++ 语言才能使用它。

是否可以加载 C++ 程序?

最佳答案

据我所知,AppDomain 是进程内部的一个逻辑区域,其中可以加载一个或多个程序集。话虽如此,我认为这甚至不可行。

但是,您可以从 .NET 程序集调用 native C++ DLL。 Here是一个有用的链接,您可以在其中找到一些选项,以便从 .NET 程序集调用 native C++ DLL。

旁注

I cannot use AppDomain.ExecuteAssembly() because it has to be a C# program to use this.

这不是真的。如果您使用任何 .NET 语言编写程序,则代码的编译版本将是一个程序集,其中将包含相同的代码和数据文件。因此,AppDomain.ExecuteAssembly() 可以执行任何 .net 程序集,而无需由 C# 编译器创建此程序集。

关于c# - 将 C++ 程序加载到 C# AppDomain,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24798996/

相关文章:

c# - 适用于 Windows 7 Phone 的 Wintellect PowerCollections?

c# - 在具有 EF core 的 Nuget 类库上使用 .NET 4.6.1 进行编译时出错

c# - &H57 代表什么以及如何将其翻译为 C#?

c# - 项目之间的 VS2010 程序集引用失败

c# - DateTime.AddHours 给出错误的输出和日期时间格式更改

java - 是否有库或 api 将文件存储到一个大文件中?

c++ - 编译器忽略 operator new 分配

.net - 处理平面依赖冲突

c++ - 如何为嵌套模板类提供推演指南?

c# - 创建 FileStream.Open c# 的接口(interface)