关于使用C#调用C++生成的动态链接库(DLL文件)

      使用C++的打开一张图片,C++的程序。在C++新建项目的应用设置里面选择DLL,图片如下

关于使用C#调用C++生成的动态链接库(DLL文件)_第1张图片


       将显示单张图片的C++代码复制到建立文件的.CPP文件下面,然后调试。

       代码如下:

 // Cpp_cshape.cpp : 定义 DLL 应用程序的导出函数。
//
#include "stdafx.h"
#include "stdafx.h"   
#include "cv.h"  
#include "highgui.h"  
  extern "C" __declspec(dllexport) void Show()    
 {    
     IplImage *img = cvLoadImage("D:\\Tulips.jpg");  
     cvNamedWindow("Image:",1);  
     cvShowImage("Image:",img);  
     cvWaitKey();  
     cvDestroyWindow("Image:");  
     cvReleaseImage(&img);  
     return ;  
 }  


然后在VS2010里面建立C#的windows的窗体程序,输入

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices; 


namespace Cshape_diaoDLL
{
    class CPPDLL
    {
        [DllImport("Cpp_cshape.dll", CharSet = CharSet.Ansi)]
        public static extern int Show();
    }  


    class Program
    {
        static void Main(string[] args)
        {
            CPPDLL.Show();
            Console.ReadLine();  
        }
    }
}


你可能感兴趣的:(C#)