请教大家IdMappedPortTCP做加密转发(端口映射)的问题

radarhp 2009-11-25 10:57:19
最近用indy10.1.5 IdMappedPortTCP做加密转发(端口映射)
首先,直接用IdMappedPortTCP做代理服务器是完全工作正常的

现在希望加密通信过程(无论DecodeData还是EncodeData,目前都只是一句OutputDebugString,输出封包信息

代码如下



procedure TForm1.IdMappedPortTCP1Execute(AContext: TIdContext);
begin
OutputDebugString(PChar(TIdMappedPortContext(AContext).NetData));
TIdMappedPortContext(AContext).NetData := DecodeData(TIdMappedPortContext(AContext).NetData);
end

procedure TForm1.IdMappedPortTCP1OutboundData(AContext: TIdContext);
begin
OutputDebugString(PChar(TIdMappedPortContext(AContext).NetData));
TIdMappedPortContext(AContext).NetData := EncodeData(TIdMappedPortContext(AContext).NetData);
end





现在问题如下
client发送的数据是通过了DecodeData 发送去了server。
server返回信息IdMappedPortTCP就没有收到了。


如果注释EncodeData或者DecodeData任何一个的调用,转发通信的过程又正常了。

请大家指点为什么会这样子?









...全文
506 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
loevor3123 2010-05-05
  • 打赏
  • 举报
回复
楼主,能否提供一下您indy10.1.5 代理的源码..

QQ邮箱:338580@163.com


谢谢
radarhp 2009-11-25
  • 打赏
  • 举报
回复
可能我的系统或者delphi出了点意外。。。重新做了系统装了delphi2007
貌似ok了。。。nnd

这年头人品很重要
gyk120 2009-11-25
  • 打赏
  • 举报
回复
不知道是server解析出了问题还是Client接受的时候出了问题?你在server上抓包,看看server把信息发出去没有?

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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