我在用NETBIOS通信协议接受数据包时,
1.定义了ncb结构,type ncb=packed record........
但在运行以下函数时总是不能成功返回。why?
function NETBIOS_ResetALL (g_lenum:PLANAENUM;MaxSession:uchar;MaxName:uchar;bFirstName:boolean):integer;
var
ancb:ncb;
i:integer;
begin
ZeroMemory(@ancb,sizeof(NCB));
ancb.ncb_callname[0]:=char(MaxSession);
ancb.ncb_callname[2]:=char(MaxName);
ancb.ncb_callname[3]:=char(bFirstname);
ancb.ncb_command:=NCBRESET;
for i:=0 to integer(g_lenum.length)-1 do begin
ancb.ncb_lana_num:=BYTE(g_lenum.lana[i]);
netbios(addr(ancb));
if (ancb.ncb_retcode<>NRC_GOODRET) THEN begin
result:=ancb.ncb_retcode;//返回为7或者3。
exit;
end;
end;
result:=NRC_GOODRET;
end;2.定义ncb结构时如果去掉packed,如type ncb=record........
则运行NETBIOS_ResetALL能成功调用,然后,创建ncb_event,并加名成功,调用NETBIOS_LISTEN,
返回0,NCB_ncb_cmd_cplt=255;然后进入线程,调用以下语句时无返回。why?
dwRet:=WaitForMultipleObjects(dword(g_lenum.length),@g_hArray,false,INFINITE);
为什莫无返回,是不是ncb_event没触发。如果论坛不便,请将qq发给我。我的QQ:30282322
1.定义了ncb结构,type ncb=packed record........
但在运行以下函数时总是不能成功返回。why?
function NETBIOS_ResetALL (g_lenum:PLANAENUM;MaxSession:uchar;MaxName:uchar;bFirstName:boolean):integer;
var
ancb:ncb;
i:integer;
begin
ZeroMemory(@ancb,sizeof(NCB));
ancb.ncb_callname[0]:=char(MaxSession);
ancb.ncb_callname[2]:=char(MaxName);
ancb.ncb_callname[3]:=char(bFirstname);
ancb.ncb_command:=NCBRESET;
for i:=0 to integer(g_lenum.length)-1 do begin
ancb.ncb_lana_num:=BYTE(g_lenum.lana[i]);
netbios(addr(ancb));
if (ancb.ncb_retcode<>NRC_GOODRET) THEN begin
result:=ancb.ncb_retcode;//返回为7或者3。
exit;
end;
end;
result:=NRC_GOODRET;
end;2.定义ncb结构时如果去掉packed,如type ncb=record........
则运行NETBIOS_ResetALL能成功调用,然后,创建ncb_event,并加名成功,调用NETBIOS_LISTEN,
返回0,NCB_ncb_cmd_cplt=255;然后进入线程,调用以下语句时无返回。why?
dwRet:=WaitForMultipleObjects(dword(g_lenum.length),@g_hArray,false,INFINITE);
为什莫无返回,是不是ncb_event没触发。如果论坛不便,请将qq发给我。我的QQ:30282322
解决方案 »
- 请问谁有Delphi 5?
- vb调用dll问题
- 坐标轴显示仪器测得的数据
- 如何能在退出程序的时候退认?
- Dll动态调用???(送100分)
- 怎样让Listview1 中的checkbox 不能用鼠标点改变状态,但可以用语句进行改变状态。
- 怎样可以写一个程序集成在别的软件上呢。比如写一个程序让dephi多一个菜单。
- 有人做过了学校的学生管理系统吗?
- 高兴!Delphi7终于去掉可恶的Quick Report了
- 紧急求救,操作prodax数据库时出现'Too many record locks on table'
- 大伙帮忙看看,为什么这个插件程序不能正常运新(附源代码)?
- IE中的插件是个什么东西?如果要给IE开发插件还要知道哪些信息?
http://www.cx66.com/cxgzs/program/delphi/1186.htm
http://www.cx66.com/cxgzs/program/delphi/1186.htm文章到处都是,不能用。