相关疑难解决方法(0)

如何在vc ++中使用c#Dll?

我使用命令行(csc)创建了一个dll.假设dll包含Add(int,int)方法.现在我想在vc ++中使用add函数?

这该怎么做?

对你的帮助表示感谢.

这就是我在做的事情.

vcproj; 对于这个项目,我有右键单击和链接器部分添加其他依赖项.添加dll所在的路径.

main.cpp中

using namespace Test

void main()

{

  demo d;

  d.add(5,5);

}
Run Code Online (Sandbox Code Playgroud)

错误命名空间测试不存在.

怎么解决这个?

我需要在非托管代码中使用该DLL

.net c# visual-c++

7
推荐指数
2
解决办法
1万
查看次数

从本机C++反转PInvoke

我目前正在尝试从非托管C++应用程序中调用C#DLL中的函数.

在网上搜索了几个小时后,我发现我有几个选择.

我可以使用COM,DllExport或者使用反向PInvoke和委托.最后听起来对我最有吸引力,所以在搜索之后我就这里.

它声明该文章展示了如何使用反向PInvoke,但看起来C#代码必须首先导入C++ Dll才能使用它.

我需要能够使用C++来调用我的C#Dll函数,而无需先运行C#应用程序.

也许反向PInvoke不是这样做的方式,但是当谈到低级别的东西时我很缺乏经验,所以关于如何做到这一点的任何指针或提示都会很棒.

链接中的代码是

C#

using System.Runtime.InteropServices;

public class foo    
{    
    public delegate void callback(string str);

    public static void callee(string str)    
    {    
        System.Console.WriteLine("Managed: " +str);    
    }

    public static int Main()    
    {    
        caller("Hello World!", 10, new callback(foo.callee));    
        return 0;    
    }

    [DllImport("nat.dll",CallingConvention=CallingConvention.StdCall)]    
    public static extern void caller(string str, int count, callback call);    
}
Run Code Online (Sandbox Code Playgroud)

C++

#include <stdio.h>    
#include <string.h>

typedef void (__stdcall *callback)(wchar_t * str);    
extern "C" __declspec(dllexport) void __stdcall caller(wchar_t * input, …
Run Code Online (Sandbox Code Playgroud)

c# c++ pinvoke

7
推荐指数
1
解决办法
5619
查看次数

是否可以在非托管VC++应用程序中使用使用C#创建的DLL?

我有一个用C#编写的DLL,我想将它与C#应用程序和用非托管VC++编写的应用程序一起使用.这可能吗?

c# c++ dll

6
推荐指数
1
解决办法
991
查看次数

将C#dll导入C++托管代码(.NET)

我正在使用Visual Studio 2010.我在C#中编写了一个dll,然后管理了dll.现在由于某种原因,我需要用C++编写一个软件(.NET然后也管理).我需要将C#dll导入到我的C++ .NET代码中.我不知道这样做,我做了几次搜索,但这个问题似乎没有被涵盖.例如,在C#中我没有包含文件,那么我的C++(.NET)项目如何知道dll中的类和函数?谢谢,

c# dll c++-cli visual-studio-2010

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

c# ×4

c++ ×2

dll ×2

.net ×1

c++-cli ×1

pinvoke ×1

visual-c++ ×1

visual-studio-2010 ×1