将 C++ 管理的 dll 导入 C#.NET 项目时出现问题

Problems while Importing a C++ managed dll to C#.NET Project

这似乎是标题中的重复问题,但让我澄清一下,我已经搜索并遵循了不同的方法。
基本上我必须将 managed C++ dll 导入到 C# 项目中。查阅了一些教程,终于创建了一个managed C++ dll。现在在导入 dll 时出现以下错误:

An attempt was made to load a program with an incorrect format

我也找到了一些解决方案,例如 this but these solutions could not help me. Before facing this error I had to consult this solution and then this

这是我如何尝试导入 dll:

的屏幕截图

设置:

代码:

有人请指导我在我的项目中导入 dll 的正确方法。

此 C++ 库适用于特定体系结构(x64 或 x86)。另一方面,C# 不是(任何 CPU),这就是为什么会出现这种错误 - C# 很可能假设您有一个 x64 非托管库。您应该将 C# 项目中的体系结构限制为其中之一(x64 或 x86),以便在两个项目中它们是相同的。

您不应该将文件复制作为构建前的步骤吗?在构建之前确保它位于正确的位置。我也会删除 exit 0,它不需要。

DllImport 通常用于本机 C 风格 API,而不是托管程序集和 C++/CLI 程序集。这些 .Net 程序集,无论是否混合模式,都可以添加到通常的程序集依赖位置。

如果这是 "Managed C++" 而不是 "C++/CLI" 程序集,它也可能与目标 .Net 框架不兼容。