c#调用动态连接库

999-dieure 2008-06-13 04:41:21
这个是给出来的dll的接口说明文件:

function OpenPort(ThePort:byte ; AppPath:shortString): byte; stdcall; external 'ICDLL.dll' name 'OpenPort';
ThePort->要打开的串口号。如打开COM1,则为1。
AppPath->系统安装路径
返回值说明:0->成功, 1->系统路径不正确,85->系统日期错误, 86->没有计算升迁号, 87->系统过期 88->将要过期, 89->升迁号被破坏
这个是delphi写的吗?
我在c#调用的时候,是这样写的
using System.Runtime.InteropServices; //添加了这个引用


[DllImport("ICD.dll", EntryPoint = "OpenPort",CallingConvention=CallingConvention.StdCall)]//表示调用ICD.dll文件中的OpenPort 函数
public static extern byte OpenPort(byte port, string AppPath);

byte i=OpenPort(1,"d:\\pst\\");
就是这样调用的,程序运行的时候不报错,可是,执行这个函数的返回值是1,也就是说,还是错了,系统路径不正确
帮我看看 谢谢!!!
...全文
161 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

110,570

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧