不知道怎么调用方法啊

sunchaohuang 2008-11-05 02:41:14
方法说明:
8. function mfi_read_usercard(sec:byte;var sys_no:dword;var user_id:dword;var user_type:byte;
var date_limits:Tdate;var card_sn:dword;
var mon1:DWORD;var mon2:dword;var card_sta:byte;
var card_times:word;var bank_block1:shortstring;
var bank_block2:shortstring):boolean;stdcall;
功能:读取用户卡信息
参数1(sec):用户卡扇区号
参数2(sys_no):取得系统号
参数3(user_id):取得用户编号
参数4(user_type):取得用户类型
参数5(date_limits):取得使用期限
参数6(card_sn):取得用户卡序列号
参数7(mon1):取得金额1(mon1,mon2小者为余额,大者为上一次余额。若等于$FFFFFFFF
表示金额错误,需要查账修正金额
参数8(mon2):取得金额2
参数9(card_sta):卡状态。0为正常,1为锁卡(由于交易失败);
参数10(card_times):刷卡次数。如果为$FFFF,表示数据错误,需要查账重置计数器;
参数11(bank_block1):银行卡磁道2;
参数12(bank_block2):银行卡磁道3;



[DllImport("faka.dll")]
private static extern bool mfi_init_usercard(Int32 sec, out Byte sys_no, out Int32 user_id, out Int32 user_type, out DateTime date_limits, out Int32 card_sn, out Int32 mon1, out Int32 mon2, out Byte card_sta, out Int32 card_times, out String bank_block1, out String bank_block2);


上面是delphi开发的.dll它提供了一个方法, 我用OUT和Ref都试验过了调用出错,应该如何调用
...全文
137 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
abcniu 2008-11-06
  • 打赏
  • 举报
回复
这是什么的代码
yilanwuyu123 2008-11-06
  • 打赏
  • 举报
回复
报的什么错误? 要不就是声明不对 要不就是内存没有对齐。
palmax 2008-11-06
  • 打赏
  • 举报
回复
d里声明dword,你声明的是byte,连字节数都不对
sunchaohuang 2008-11-06
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 yilanwuyu123 的回复:]
报的什么错误? 要不就是声明不对 要不就是内存没有对齐。
[/Quote]

还有其他的内容
qinhl99 2008-11-05
  • 打赏
  • 举报
回复
up
sunchaohuang 2008-11-05
  • 打赏
  • 举报
回复
请高手帮我写个
哥本哈士奇 2008-11-05
  • 打赏
  • 举报
回复
平台调用啊.推荐楼主参考博客堂一个高人写的工具:
http://blog.joycode.com/vbcti/archive/2008/10/28/115319.aspx
sunchaohuang 2008-11-05
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 cpio 的回复:]
应该用ref
[/Quote]

我本来就是用ref的怎么测试都不行 晕X
IMAGSE 2008-11-05
  • 打赏
  • 举报
回复
反编译一下,然后把源码给delphi的高手看下~
cpio 2008-11-05
  • 打赏
  • 举报
回复
应该用ref

110,538

社区成员

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

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

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