创建用于 C# 程序的 CPP DLL
Creating a CPP DLL for use in a C# program
所以我有一个WPF解决方案。我添加了一个新项目,并向其中添加了 CPP Dll 项目。
我用了这个例子。很简单。
http://www.codeproject.com/Articles/9826/How-to-create-a-DLL-library-in-C-and-then-use-it-w
这是我的代码
CppTestDll.cpp
#include <stdio.h>
extern "C"
{
__declspec(dllexport) void DisplayHelloFromDLL()
{
printf("Hello from DLL !n");
}
}
当我构建它时,我实际上得到了一个 DLL
现在,当我进入我的 WPF 应用程序并尝试添加对此 DLL 的引用时,出现此错误。
"无法添加对'C:\DIR\testcppdll.dll'的引用。请 确保该文件可访问,并且它是有效的程序集 或 COM 组件。
如果你看一下你引用的例子:
创建一个简单的 C# 应用程序:
- 启动Visual Studio .NET。转到"文件>新建>项目"。
- 选择"Visual C# 项目。...(可以选择"WPF 项目")
- 为应用程序命名。按 OK。进入指定的 类中,插入以下两行:
[DllImport("TestLib.dll")]
public static extern void DisplayHelloFromDLL ();
在 C# 中,关键字 extern 指示该方法在外部实现。
您的代码应如下所示:
using System;
using System.Runtime.InteropServices; // DLL support
class HelloWorld
{
[DllImport("TestLib.dll")]
public static extern void DisplayHelloFromDLL ();
public void SomeFunction()
{
Console.WriteLine ("This is C# program");
DisplayHelloFromDLL ();
}
}
您不会添加对 DLL 的引用 - 您可以使用DLLImport
P/Invoke
函数
相关文章:
- .cpp和.h文件中的模板专用化声明
- 为什么两个不同的未命名名称空间可以共存于一个cpp文件中
- CPP DLL 自定义操作代码在安装过程中未执行
- 如何在 lua cpp 模块中调用托管 c++ dll 函数
- DLL文件中函数的预期行为在C中编写并从CPP文件打电话
- 带有 Gradle cpp 插件的 Buld DLL
- 创建用于 C# 程序的 CPP DLL
- 如何从 Java 调试 CPP DLL
- C++ CPP 使用参数动态调用 DLL
- 用CPP中的参数动态调用外部DLL
- 从 cpp 调用 dll 库
- 组装.LoadFrom在包含MFC的cpp/CLI DLL上失败
- 使用CPP DLL中的c#代码
- 将 CPP 库编译为 DLL,找不到 stdlib
- 在python中使用cpp项目的dll和.lib文件
- c静态库在cpp dll中的功能
- 在CPP中创建和使用DLL
- 释放MFC Ext DLL时的断言错误@ dllmodule . cpp# 230
- 如何在cpp项目()的生成文件中添加dll的引用
- 如何将资源仅DLL转换为十六进制格式*.cpp文件