请高手帮我把下面的DELPHI代码转成VB代码,给出参考写法即可,谢谢!

Netcity 2008-01-17 05:43:30
关于VB WINSOCK通讯,请高手指导一下,若能给出原代码可以支付一点辛苦费,谢谢!
通讯协议下载地址:www.io89.com/a5.pdf
要求:能正确接收指纹数据即可
我的QQ:6334164, MSN:netcityken@hotmail.com, 手机:13138890525

type
TFPUSTRU = packed record//tcp/ip回送结构
uno: cardinal;//用户号码 4 byte
uname: Array[1..10] of char; //姓名 10 byte
udepname: Array[1..10] of char;// 部门 10 byte
end;

TFPIdentify = packed record//指纹验证识别
MachineNumber: Byte;
PIN: Cardinal;
ImageSize: Cardinal;
end;

TFPResult= packed record//pc回送结果
PIN: Cardinal;
uname: Array[1..20] of char; //姓名 20 byte
udepname: Array[1..20] of char;// 部门 20 byte
end;


//UDP收到“REQ”后立即回发“OK”,VB中使用WINSOCK控件,能收到REQ,但发送OK没反应。UDP PORT=4371
procedure TFrmMain.UDPServerUDPRead(Sender: TObject; AData: TStream;
ABinding: TIdSocketHandle);
var
DataStringStream: TStringStream;
s: String;
begin
DataStringStream := TStringStream.Create('');
try
DataStringStream.CopyFrom(AData, AData.Size);
if datastringStream.DataString = 'REQ' then
begin
s := 'OK';
ABinding.SendTo(ABinding.PeerIP, StrToInt(g_udpport), s[1], Length(s)); //关键是在这里不知道VB怎样发送,我用VB的WINSOCK

控件发,但没有反应。
end;
finally
DataStringStream.Free;
end;
end;



procedure TFrmMain.IdTCPServerExecute(AThread: TIdPeerThread);
var
//省去了变量声明
begin
try
try
with AThread do
begin
//开始接收数据
TempStream := TMemoryStream.Create;
connection.ReadStream(tempstream, 4);
tempstream.Position := 0;
tempstream.ReadBuffer(size, 4);
tempstream.Free;
//待接收数据大小
size1 := size;
if (Size > 0) then
begin
TempStream := TMemoryStream.Create;
connection.ReadStream(tempstream, 2);
tempstream.Position := 0;
tempstream.ReadBuffer(rvcommand, 2);
Tempstream.Free;
//显示命令请求
rvcommand1 := rvcommand;
if rvcommand < 7 then
postmessage(FrmMain.handle, WM_dispstart, 2,0);
case rvcommand of
1: begin //收到验证命令
TempStream := TMemoryStream.Create;
try
connection.ReadStream(tempstream, sizeof(fpvfstru));
tempstream.Position := 0;
tempstream.ReadBuffer(fpvfstru, sizeof(fpvfstru)); //关键这里不知道在VB怎么写,将接收到二进制数据转换为结


finally
Tempstream.Free;
end;


...全文
60 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
knowledge_Is_Life 2008-04-30
  • 打赏
  • 举报
回复
没遇到过这种情况.

1,502

社区成员

发帖
与我相关
我的任务
社区描述
VB 网络编程
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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