帮忙看看C#调用DLL问题?

问题描述

DLL:Mr3001ADll.dll函数:ConnectReader打开串口已知:hCom=0,nTransmode=1VB中声明如下:PublicDeclareFunctionConnectReaderLib"Mr3001ADll.dll"(ByRefhComAsLong,ByValnTransmodeAsLong,ByValnNetPortAsLong,ByValstrReaderIPAsString,ByValstrSerialNumAsString,ByValnBaudRateAsInteger)AsIntegerVB中调用Result=ConnectReader(hCom,Workmode,nNetPort,strReaderIP,StrComm,9600)使用正常,能打开串口。我把他在C#中引用:[DllImport("Mr3001ADll.dll",EntryPoint="ConnectReader",CharSet=CharSet.Unicode)]publicstaticexternintConnectReader(reflonghCom,longnTransmode,longnNetPort,stringstrReaderIP,stringstrSerialNum,intnBaudRate);调用:if(0==RfidApiLib.ConnectReader(refhCom,nTransmode,nNetPort,strReaderIP,"com1",9600)){MessageBox.Show("ok");}else{MessageBox.Show("no");}没有打开串口?请问是什么原因?

解决方案

解决方案二:
vb里的StrCom字符串是等于"com1"吗?
解决方案三:
"com1"换成"COM1"试试
解决方案四:
不行,VB里StrCom是等于COM1
解决方案五:
高手们帮帮忙啦!

时间: 2024-07-28 14:20:50

帮忙看看C#调用DLL问题?的相关文章

求大神们帮帮忙 asp.net 调用dll的时候报试图加载格式不正确的程序

问题描述 求大神们帮帮忙 asp.net 调用dll的时候报试图加载格式不正确的程序 win7 64 dll也是在我自己电脑上生成的,网站也是部署在我自己的电脑上,调用dll的时候报试图加载格式不正确的程序 解决方案 C#调用DLL报"试图加载格式不正确的程序"试图加载格式不正确的程序试图加载格式不正确的程序 BadImageFormatException 解决方案二: 我用winform调用这个dll是可以调用成功的,还请前辈们不吝赐教

请问web开发中,js调用DLL动态库,同一台pc机调用了不同的动态库,有的动态库调不到,怎么办?

问题描述 请问web开发中,js调用DLL动态库,同一台pc机调用了不同的动态库,有的动态库调不到,怎么办? 两个动态库,一个医保刷卡的,一个刷POS的,单独使用POS机,能正常使用,但是如果之前使用过医保刷卡机,就不能进入POS的动态库了,感觉像是冲突了一样,哪个大神能帮忙解决一下. 解决方案 两个动态库,一个医保刷卡的,一个刷POS的,单独使用POS机,能正常使用,但是如果之前使用过医保刷卡机,就不能进入POS的动态库了,感觉像是冲突了一样,哪个大神能帮忙解决一下.

c++-跪求大神帮忙,关于对dll动态链接库加密的问题

问题描述 跪求大神帮忙,关于对dll动态链接库加密的问题 我们在搞一个项目,写了好多个dll文件,现在老板要求对dll文件进行加密,使得这个dll文件只能在特定的电脑上打开,转存,不能被别的电脑随便打开....跪求那个好心的大神给点意见.. 解决方案 不需要对dll加密,你的dll调用的时候传一个序列号,你的dll内部获得主板id,网卡mac或者磁盘卷标等,按照一个加密算法算出序列号,和输入的比较,确认正确才执行,否则丢出错误. 你的序列号放在你的主程序中,这样别人就算拷贝了你的程序,因为机器环

c# dllimport-DllImport 方法调用dll文件返回-4

问题描述 DllImport 方法调用dll文件返回-4 大侠们,我想问下我用下面方法调用dll文件,用方法openFile_DLL取值时返回值总是-4,请问是何原因?谢谢. [DllImport("GFileAnalysis.dll", EntryPoint = "openFile", CallingConvention = CallingConvention.Cdecl)] private static extern int openFile_DLL(strin

dll结构体-C#调用DLL结构体,第一次成功,第二次的时候就报错。尝试读取或写入受保护的内存。

问题描述 C#调用DLL结构体,第一次成功,第二次的时候就报错.尝试读取或写入受保护的内存. C++代码 typedef struct tagIDCardData{ char Name[32]; //姓名 char Sex[6]; //性别 char Nation[20]; //名族 char Born[18]; //出生日期 char Address[72]; //住址 char IDCardNo[38]; //身份证号 char GrantDept[32]; //发证机关 char User

关于C#调用DLL和C线程回调C#代码问题,大家探讨下。。。。

问题描述 我使用VC创建了一个DLL文件,这个DLL文件唯一特殊地方是它创建一个线程,该线程可以回调C#代码?问题出现在回调几次后C#程序出错挂掉.VC程序如下:Test.DLLtypedefint(*InputFunction)();typedefint(*OutputFunction)();//全局变量InputFunctionSpexInputFunction=NULL;OutputFunctionSpexOutputFunction=NULL;intIsStop=0;HANDLEspex

调用dll的问题

问题描述 不知大家用过华为的信息机没有,就是在调用查询函数时,必须首先调用第一个函数QuerySentShortMessages,然后才能第二个函数GetNextSentShortMessage,因为第二个函数的调用,需要上一个函数返回值,但是第一个函数中QuerySentShortMessages返回hQuery是一个句柄,我怎么在第二个函数GetNextSentShortMessage引用呢,第二个函数中hQuery定义是int,而第一个函数定义int*所以我在调用第二个函数时出现了一个错误

在ASP文件中调用DLL

在ASP文件中调用DLL 动态联接库(DLL)是加快应用程序关键部分的执行速度的重要方法,但有一点恐怕大部分人都不知道,那就是在ASP文件也能通过调用DLL来加快服务器的执行速度,下面我简单的介绍一下在ASP文件调用DLL的步骤. 首先,必须得有DLL文件,本例是通过VB5.0创建ActiveX DLL文件,这个文件模拟了一个掷色子的过程. 在VB5.0的环境下,新建一个工程,并双击新建工程窗口中ActiveX DLL图标,VB将自动为项目添加一个类模块,并将该项目类型设置为ActiveX DL

在ASP文件调用DLL

动态联接库(DLL)是加快应用程序关键部分的执行速度的重要方法,但有一点恐怕大部分人都不知道,那就是在ASP文件也能通过调用DLL来加快服务器的执行速度,下面我简单的介绍一下在ASP文件调用DLL的步骤.    首先,必须得有DLL文件,本例是通过VB5.0创建ActiveX DLL文件,这个文件模拟了一个掷色子的过程.   在VB5.0的环境下,新建一个工程,并双击新建工程窗口中ActiveX DLL图标,VB将自动为项目添加一个类模块,并将该项目类型设置为ActiveX DLL.在属性窗口将