有关在Socket使用代理的问题 ( 积分: 100 )

  • 主题发起人 主题发起人 anick
  • 开始时间 开始时间
A

anick

Unregistered / Unconfirmed
GUEST, unregistred user!
近来写了一款通信软件,客户端用TClientSocket,可是有些用户是使用的公司或者学校内部的局域网,所以无法使用我的软件,不过听说除了用户在自己的机器上装代理软件,还可以在程序中由用户指定代理后,我的程序根据用户指定的代理转一下,这样也可以保持通讯。

我的问题就是不知道怎么写,因为没有类似的经验,网上也找不到相关的资料,所以请教各位富翁,分虽然不多,不过请尽量详细一点,谢谢!
 
近来写了一款通信软件,客户端用TClientSocket,可是有些用户是使用的公司或者学校内部的局域网,所以无法使用我的软件,不过听说除了用户在自己的机器上装代理软件,还可以在程序中由用户指定代理后,我的程序根据用户指定的代理转一下,这样也可以保持通讯。

我的问题就是不知道怎么写,因为没有类似的经验,网上也找不到相关的资料,所以请教各位富翁,分虽然不多,不过请尽量详细一点,谢谢!
 
不要用TClientSocket,直接用Indy或ICS都支持代理,很简单
 
tserversocket给所有的c端连上去
s端做中转!!
 
那不是我必须在代理服务器上还要写个程序?
我向楼上是不是理解错了我的意思
代理不是常用的有http和socket5代理吗
我的意思就是像QQ那样,设置好了以后,就可以通过代理跟我的服务器端建立连接与通信
 
indy 的组建里面,有设置代理的属性。
 
我也碰到了这个问题,大家讨论一下,用TClientSocket可以实现通过代理和服务器连接吗
 
我的客户端和服务器都是使用UDP。那又该怎么写才能上去啊。
 
可以

要连接proxy,然后用特殊的语法发送即可

你可以看看flashget在使用proxy下载文件时,日志的显示
 
ffffffffffffffffff
 
这个问题有没有办法解决呢,我现在也碰到了这个问题,在局域网内要呼叫公网IP,但用了代理服务器.不知用TCLIENTSOCKET有没有办法.我现在用了一个第三方工具才可以呼叫,但不知有没有办法将这个代理设置功能集成到我的软件里面,这样就不用第三方代理中转工具了.
 
indy里哪个组件支持代理呢,能否说一下.谢谢了.
 
直接连到代理,跟代理对话,ok,就可以了
 
那肯定不行,比如说我要连接远程主机为:218.0.0.1,代理为:192.168.0.8,一个TCPCLIENT只有一个PORT和HOST属性,你将这两个属情填为代理的Ip及端口的话,是可以连接代理对话,但怎么能去连接远程IP呢.
 
用idhttp控键即可~~ 在连接之前加以判断
if check.Checked then//用户选择是否使用代理
begin
idhttp1.ProxyParams.ProxyServer :=proxyip.Text ;//代理地址
idhttp1.ProxyParams.ProxyPort :=StrToInt(port.text);//端口
//如果代理需要验证
idhttp1.ProxyParams.ProxyUsername:=uname.Text ;//用户名
idhttp1.ProxyParams.ProxyPassword:=pw.Text ; //密码
end
else
begin
idhttp1.ProxyParams.ProxyServer :='';
idhttp1.ProxyParams.ProxyPort :=0;
idhttp1.ProxyParams.ProxyUsername:='';
idhttp1.ProxyParams.ProxyPassword:='';
end;
 
这个只是让HTTP的数据通过代理出去,如果用TCPCLIETN呢.那它跟IDHTP的关系应该怎么配合才能将数据从服务器出去.
 
后退
顶部