高手来看看,线登急

Beginner_xingyun 2006-11-01 10:41:24
有一个DLL文件里有这么一个函数:ERRCODE jSetSerialNo(const char * pcszSerialNo)
这个函数返回二种值,正确的话为ERR_NONE,错误的话为ERR_SECURITY
我想在C#中使用该函数代码如下:
[DllImport("j_MA.dll")]
public static extern string jSetSerialNo(string pcszSerialNo);
jSetSerialNo(textBox7.Text);
可我这里如果正确则返回空值,不正确程序就会出错,怎么才能像原始程序一样有两种返回值怎么获得呢?
我转换成string类型对吗?为什么会和源程序不一样的结果呢?得不到其他字符串结果
...全文
105 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
周公 2006-11-01
  • 打赏
  • 举报
回复
ERR_NONE 如果是整数宏定义:
public static extern int jSetSerialNo(string pcszSerialNo);

正解。
Beginner_xingyun 2006-11-01
  • 打赏
  • 举报
回复
好像是枚举
zhangzengping 2006-11-01
  • 打赏
  • 举报
回复
up 以下, 我做过,现在忘了!

参数有 : string类, char[] 类 unsafe * 指针类!

有一个会成功, 我记忆就是 string | char[].

你做试试吧, 不是到返回类型是什么 : 一般是 bool b =jSetSerialNo(textBox7.Text);

if(b)... ; else ... ;

JasonHeung 2006-11-01
  • 打赏
  • 举报
回复
ERR_NONE 如果是整数宏定义:
public static extern int jSetSerialNo(string pcszSerialNo);
Knight94 2006-11-01
  • 打赏
  • 举报
回复
你的ERR_NONE和ERR_SECURITY的值是枚举,还是字符串,还是其他

111,093

社区成员

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

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

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