C# SOCKET 远程控制软件的问题

puwuluojuan 2010-08-03 06:26:41
大家好 请教个问题 我们都知道SOCKET中服务器监听一个端口后主动等候客户端的链接
但在远程控制中 服务端 是要主动链接服务器 然后再通讯 小弟现在遇到一个问题 就是如何反响链接 要被控制端 主动的链接客户端 小弟的思路是 在控制端 启动后 主动更新IP地址 被控制端 启动时 登陆FTP获取更新的IP地址 然后
被控制端 Connection主动链接客户端... 我在被控制端中开启了个TIME计时器 每秒链接客户端IP 如果链接失败 就继续直到链接成功后
代码如下:
Socket connection()
{
//没链接成功后下次链接进入这里 他就提示无法释放SOCKET支援 还有 提示不能链接已经释放的SOCKET 如果需要请要异步方法 大家帮我解决下
ipe = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 3000);
try
{
sock.Connect(ipe);
}
catch (SocketException ex)
{



label1.Text = "fale";

connection();

}
label1.Text = "true";


return sock;



}


public Form1()
{
InitializeComponent();
sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
}

private void button1_Click(object sender, EventArgs e)
{
timer1.Enabled = true;

}

private void timer1_Tick(object sender, EventArgs e)
{

Thread ts = new Thread(new ThreadStart(a));
ts.IsBackground = true;
ts.Start();


}
void a()
{

connection();
}

假如链接失败后 他要提示无法继续链接 或则无法释放SOCKET
请问这个方法如何解决 第二个问题就是我用的这个方法很笨 希望大家给点建议 如何才能整整的反响链接 谢谢了
...全文
167 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
hncdzyl 2011-10-12
  • 打赏
  • 举报
回复
每天回帖即可获得10分可用分!
  • 打赏
  • 举报
回复
关于代码,没有什么意思。
  • 打赏
  • 举报
回复
搞清楚什么是c-s。如果是双向的对等网络,不要只说什么客户端、服务器。
guohelv0519 2010-08-03
  • 打赏
  • 举报
回复
看看我的下载资源吧
viki117 2010-08-03
  • 打赏
  • 举报
回复
1.SOCKET定义在try外面,如果操作失败,早catch中释放掉SOCKET就可以了

2.反响链接?互相通信吧,把你的代码掉个头就可以了

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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