标题:高手请进:求教关于C#调用C++写的DLL问题
取消只看楼主
b870516
Rank: 2
等 级:论坛游民
帖 子:38
专家分:44
注 册:2007-7-13
结帖率:0
已结贴  问题点数:5 回复次数:1 
高手请进:求教关于C#调用C++写的DLL问题
这个问题,我问了4个群,看了网页前几页的所有教程,都没有实现,请高手帮忙
有一个DLL,说明如下:我该如何在C#中调用?
5、int WINAPI GetSerial(HANDLE hDevice,UCHAR * serial);
//读取序列号
//返回值:0---表示写入命令失败
//        1---表示读取序列号失败
//        2---表示读取序列号成功
/*
unsigned char serial[16];
int result=GetSerial(hDevice,serial);
switch(result)
{
case 0:...
case 1:...
case 2:...
}

*/

我的方法:

//DLLWrapper.cs代码

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

namespace 光谱仪控制
{
    class DLLWrapper
    {
        [DllImport("CCD1.DLL")]
        public static extern int GetSerial(IntPtr hDevice, string serial);
    }
}

using System;
using System.Collections.Generic;
using
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.Reflection;
using System.Threading;

namespace 光谱仪控制
{
    string serial=null;
    public unsafe partial class Form1 : Form
    {
         public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }
        private void button2_Click(object sender, EventArgs e)
        {
            
            int res = 4;
            res = DLLWrapper.GetSerial(hDevice,serial);
            switch (res)
            {
                case 0:
                    MessageBox.Show("获取命令失败");
                    break;
                case 1:
                    MessageBox.Show("读取失败");
                    break;
                case 2:
                    MessageBox.Show("读取成功");
                    break;

            }

        }
    }
}


搜索更多相关主题的帖子: result 序列号 如何 网页 
2011-12-07 22:23
b870516
Rank: 2
等 级:论坛游民
帖 子:38
专家分:44
注 册:2007-7-13
得分:0 
2011-12-08 08:21



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-357260-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.053388 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved