android c# socket,C# socket发送数据问题

本人在一个窗体中设置IP地址和端口号,如下图:连接是成功,在另一个窗体中发送数据,但是就是无法发送,第二个窗体中的

if (SetIP.newclient != null)

{

int i = SetIP.newclient.Send(data);

}

这里 if 就是进不去,问一下这个怎么解决呢?

窗体1:

9f51ac0fd39ad794aca225104f4683dd.png

窗体2:

a5fda116304fc804d32d61aada082fc6.png

窗体1代码如下:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Net;

using System.Net.Sockets;

using System.Text;

using System.Threading;

using System.Threading.Tasks;

using System.Windows.Forms;

namespace frmsocket

{

public partial class frmSetIP : Form

{

public Socket newclient;

public bool Connectedtest;

public delegate void MyInvoke(string str);

public frmSetIP()

{

InitializeComponent();

}

private void Form1_Load(object sender, EventArgs e)

{

}

public void Connect()

{

byte[] data = new byte[1024];

newclient = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);    //构造socket对象

string ipadd = serverIP.Text.Trim();        //输入IP地址

int port = Convert.ToInt32(serverPort.Text.Trim());     //输入端口号

IPEndPoint ie = new IPEndPoint(IPAddress.Parse(ipadd), port);       //表示网络端点

try

{

newclient.Connect(ie);   //与服务器连接

Connectedtest = true;

}

catch (SocketException e)

{

MessageBox.Show("连接服务器失败  " + e.Message);

return;

}

}

public void DisConnect()        //断开连接

{

newclient.Shutdown(SocketShutdown.Both);

newclient.Close();

}

private void ConnectButton_Click(object sender, EventArgs e)

{

Connect();

ConnectButton.Enabled = false;

DisableConnectButton.Enabled = true;

frmSeRe SeRe = new frmSeRe();

SeRe.Show();

}

private void DisableConnectButton_Click(object sender, EventArgs e)

{

DisConnect();

ConnectButton.Enabled = true;

}

}

}

窗体2代码如下:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

namespace frmsocket

{

public partial class frmSeRe : Form

{

frmSetIP SetIP = new frmSetIP();

public frmSeRe()

{

InitializeComponent();

}

private void SendButton_Click(object sender, EventArgs e)

{

int m_length = SendBox.Text.Length;

byte[] data = new byte[m_length];

data = Encoding.UTF8.GetBytes(SendBox.Text);

if (SetIP.newclient != null)

{

int i = SetIP.newclient.Send(data);

}

}

}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值