在文本框中手动输入并连接到服务器
Posted
技术标签:
【中文标题】在文本框中手动输入并连接到服务器【英文标题】:manually input in textbox and connected to the server 【发布时间】:2011-01-01 13:15:10 【问题描述】:现在,当我按下连接按钮时,我将通过默认 IP 地址和端口号连接到服务器。 clientSocket.Connect("127.0.0.1", 8888);
我想在 GUI 中创建 2 个文本框,1 个用于 IP 地址,1 个用于端口。 这样用户可以手动键入 IP 地址和端口。 我可以知道该怎么做吗?谢谢。
使用系统; 使用 System.Collections.Generic; 使用 System.ComponentModel; 使用 System.Data; 使用 System.Drawing; 使用 System.Linq; 使用 System.Text; 使用 System.Windows.Forms; 使用 System.Net.Sockets; 使用 System.Threading;
命名空间 SocketClient
public partial class SocketClient : Form
System.Net.Sockets.TcpClient clientSocket = new System.Net.Sockets.TcpClient();
NetworkStream serverStream = default(NetworkStream);
string readData = null;
public SocketClient()
InitializeComponent();
private void getMessage()
while (true)
serverStream = clientSocket.GetStream();
int buffSize = 0;
byte[] inStream = new byte[10025];
buffSize = clientSocket.ReceiveBufferSize;
serverStream.Read(inStream, 0, buffSize);
string returndata = System.Text.Encoding.ASCII.GetString(inStream);
readData = "" + returndata;
msg();
private void msg()
if (this.InvokeRequired)
this.Invoke(new MethodInvoker(msg));
else
textDisplay.Text = textDisplay.Text + Environment.NewLine + " >> " + readData;
private void buttonConnect_Click(object sender, EventArgs e)
readData = "Conected to NYP Chat Server ...";
msg();
//
clientSocket.Connect("127.0.0.1", 8888);
serverStream = clientSocket.GetStream();
byte[] outStream = System.Text.Encoding.ASCII.GetBytes(textName.Text + "$");
serverStream.Write(outStream, 0, outStream.Length);
serverStream.Flush();
Thread ctThread = new Thread(getMessage);
ctThread.Start();
private void buttonSend_Click(object sender, EventArgs e)
private void textDisplay_TextChanged(object sender, EventArgs e)
【问题讨论】:
【参考方案1】:在设计器视图中,在所需位置添加两个 TextBox,并将 texbbox 命名为 tbIp 和 tbPort。
更新下一行 clientSocket.Connect("127.0.0.1", 8888); 到 clientSocket.Connect(tbIp.Text, Convert.Int32(tbPort.Text));
问候 阿伦达杰
【讨论】:
我有一个错误说'system.convert'不包含'int32'的目的地 我已经知道错误了。转换.ToInt32(tbPort.Text));你省略了To以上是关于在文本框中手动输入并连接到服务器的主要内容,如果未能解决你的问题,请参考以下文章
Derby 在 Java 应用程序中自动启动服务器并连接到数据库