| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2345 人关注过本帖
标题:delphixe下socket API失效,该如何解决
取消只看楼主 加入收藏
ukton11123
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-11-7
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
delphixe下socket API失效,该如何解决
将原delphi7项目升级后,引用了新的Winapi.WinSock,发现UDP的sendto等函数发送数据后,对方无法接受到数据,但函数返回值正常,请教
搜索更多相关主题的帖子: 如何 项目 
2013-11-07 22:26
ukton11123
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-11-7
收藏
得分:0 
编译都可以通过,我测试了XE3和XE5均可编译成功,但对方全都收不到数据,同样的测试代码delphi7下就可以正常运行,这是为什么呢,请高手赐教
2013-11-08 09:31
ukton11123
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-11-7
收藏
得分:0 
发送数据函数代码
function TMySocket.SendUDPData(ARemoteIP: string; ARemotePort: Word; var ABuffer;
  ABufferCount: integer): Boolean;
var
  FRemotAddr: TSockAddrIn;
begin
  Result := false;
  try

    FRemotAddr.SIn_Family := AF_INET;
    FRemotAddr.sin_addr.s_addr := inet_addr(pansichar(ARemoteIP));
    FRemotAddr.sin_port := htons(ARemotePort);
    if sendto(FMainSocket, ABuffer, ABufferCount, 0, FRemotAddr, SizeOf(FRemotAddr)) <> ABufferCount then
    begin

      Exit;
    end;
  except
  end;
  inc(SendCount);
  inc(SendSize, ABufferCount);

  Result := true;
end;
2013-11-08 09:35
ukton11123
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-11-7
收藏
得分:0 
没有错误,返回0的
2013-11-08 09:47
快速回复:delphixe下socket API失效,该如何解决
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022989 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved