请问哪位大侠晓得什么地方有C#的C/S源码下载 请问哪位大侠晓得什么地方有C#的C/S源码下载 ,或哪位大侠贴一份给我,万分感谢. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我给你一个C端如下:using System;using System.Drawing;using System.Collections;using System.ComponentModel;using System.Windows.Forms;using System.Data;using System.EnterpriseServices;using System.Net;using System.Net.Sockets;using System.Text;using System.Threading; namespace TestSer{ /// <summary> /// Form1 的摘要说明。 /// </summary> public class Form1 : System.Windows.Forms.Form { /// <summary> /// 必需的设计器变量。 /// </summary> private System.ComponentModel.Container components = null; Thread mythread ; private System.Windows.Forms.Label label1; private System.Windows.Forms.ListBox listBox1; private System.Windows.Forms.Button button1; Socket socket; public Form1() { // // Windows 窗体设计器支持所必需的 // InitializeComponent(); // // TODO: 在 InitializeComponent 调用后添加任何构造函数代码 // } /// <summary> /// 清理所有正在使用的资源。 /// </summary> protected override void Dispose( bool disposing ) { try { socket.Close();//释放资源 mythread.Abort ( ) ;//中止线程 } catch { } if( disposing ) { if (components != null) { components.Dispose(); } } base.Dispose( disposing ); } #region Windows 窗体设计器生成的代码 /// <summary> /// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 /// </summary> private void InitializeComponent() { this.label1 = new System.Windows.Forms.Label(); this.listBox1 = new System.Windows.Forms.ListBox(); this.button1 = new System.Windows.Forms.Button(); this.SuspendLayout(); // // label1 // this.label1.Location = new System.Drawing.Point(8, 8); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(184, 23); this.label1.TabIndex = 0; this.label1.Text = "label1"; // // listBox1 // this.listBox1.Dock = System.Windows.Forms.DockStyle.Right; this.listBox1.ItemHeight = 12; this.listBox1.Location = new System.Drawing.Point(200, 0); this.listBox1.Name = "listBox1"; this.listBox1.Size = new System.Drawing.Size(424, 340); this.listBox1.TabIndex = 1; // // button1 // this.button1.Location = new System.Drawing.Point(8, 40); this.button1.Name = "button1"; this.button1.Size = new System.Drawing.Size(168, 23); this.button1.TabIndex = 2; this.button1.Text = "开始监听"; this.button1.Click += new System.EventHandler(this.button1_Click); // // Form1 // this.AutoScaleBaseSize = new System.Drawing.Size(6, 14); this.ClientSize = new System.Drawing.Size(624, 349); this.Controls.Add(this.button1); this.Controls.Add(this.listBox1); this.Controls.Add(this.label1); this.Name = "Form1"; this.Text = "Socket服务器端"; this.WindowState = System.Windows.Forms.FormWindowState.Maximized; this.Load += new System.EventHandler(this.Form1_Load); this.ResumeLayout(false); } #endregion /// <summary> /// 应用程序的主入口点。 /// </summary> [STAThread] static void Main() { Application.Run(new Form1()); } private void Form1_Load(object sender, System.EventArgs e) { } public static IPAddress GetServerIP() { IPHostEntry ieh=Dns.GetHostByName(Dns.GetHostName()); return ieh.AddressList[0]; } private void BeginListen() { IPAddress ServerIp=GetServerIP(); IPEndPoint iep=new IPEndPoint(ServerIp,8000); socket=new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp); byte[] byteMessage=new byte[100]; this.label1.Text=iep.ToString(); socket.Bind(iep); // do while(true) { try { socket.Listen(5); Socket newSocket=socket.Accept(); newSocket.Receive(byteMessage); string sTime = DateTime.Now.ToShortTimeString ( ) ; string msg=sTime+":"+"Message from:"; msg+=newSocket.RemoteEndPoint.ToString()+Encoding.Default.GetString(byteMessage); this.listBox1.Items.Add(msg); } catch(SocketException ex) { this.label1.Text+=ex.ToString(); } } // while(byteMessage!=null); } private void button1_Click(object sender, System.EventArgs e) { try { mythread = new Thread(new ThreadStart(BeginListen)); mythread.Start(); } catch(System.Exception er) { MessageBox.Show(er.Message,"完成",MessageBoxButtons.OK,MessageBoxIcon.Stop); } } }} S端如下using System;using System.Drawing;using System.Collections;using System.ComponentModel;using System.Windows.Forms;using System.Data;using System.Net;using System.Net.Sockets;using System.Text; namespace TestClient{ /// <summary> /// Form1 的摘要说明。 /// </summary> public class Form1 : System.Windows.Forms.Form { private System.Windows.Forms.Button button1; private System.Windows.Forms.TextBox txtip; private System.Windows.Forms.TextBox txtport; private System.Windows.Forms.TextBox textBox1; /// <summary> /// 必需的设计器变量。 /// </summary> private System.ComponentModel.Container components = null; public Form1() { // // Windows 窗体设计器支持所必需的 // InitializeComponent(); // // TODO: 在 InitializeComponent 调用后添加任何构造函数代码 // } /// <summary> /// 清理所有正在使用的资源。 /// </summary> protected override void Dispose( bool disposing ) { if( disposing ) { if (components != null) { components.Dispose(); } } base.Dispose( disposing ); } #region Windows 窗体设计器生成的代码 /// <summary> /// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 /// </summary> private void InitializeComponent() { this.button1 = new System.Windows.Forms.Button(); this.txtip = new System.Windows.Forms.TextBox(); this.txtport = new System.Windows.Forms.TextBox(); this.textBox1 = new System.Windows.Forms.TextBox(); this.SuspendLayout(); // // button1 // this.button1.Location = new System.Drawing.Point(40, 216); this.button1.Name = "button1"; this.button1.Size = new System.Drawing.Size(160, 23); this.button1.TabIndex = 0; this.button1.Text = "发送消息"; this.button1.Click += new System.EventHandler(this.button1_Click); // // txtip // this.txtip.Location = new System.Drawing.Point(40, 128); this.txtip.Name = "txtip"; this.txtip.Size = new System.Drawing.Size(448, 21); this.txtip.TabIndex = 1; this.txtip.Text = "txtip"; // // txtport // this.txtport.Location = new System.Drawing.Point(40, 152); this.txtport.Name = "txtport"; this.txtport.Size = new System.Drawing.Size(448, 21); this.txtport.TabIndex = 2; this.txtport.Text = "txtport"; // // textBox1 // this.textBox1.Location = new System.Drawing.Point(40, 104); this.textBox1.Name = "textBox1"; this.textBox1.Size = new System.Drawing.Size(448, 21); this.textBox1.TabIndex = 3; this.textBox1.Text = "textBox1"; // // Form1 // this.AutoScaleBaseSize = new System.Drawing.Size(6, 14); this.ClientSize = new System.Drawing.Size(520, 373); this.Controls.Add(this.textBox1); this.Controls.Add(this.txtport); this.Controls.Add(this.txtip); this.Controls.Add(this.button1); this.Name = "Form1"; this.Text = "Socket客户端"; this.Load += new System.EventHandler(this.Form1_Load); this.ResumeLayout(false); } #endregion /// <summary> /// 应用程序的主入口点。 /// </summary> [STAThread] static void Main() { Application.Run(new Form1()); } private void Form1_Load(object sender, System.EventArgs e) { } private void button1_Click(object sender, System.EventArgs e) { BeginSend(); } private void BeginSend() { string ip=this.txtip.Text; string port=this.txtport.Text; IPAddress serverIp=IPAddress.Parse(ip); int serverPort=Convert.ToInt32(port); IPEndPoint iep=new IPEndPoint(serverIp,serverPort); byte[] byteMessage; Socket socket=new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp); socket.Connect(iep); byteMessage=Encoding.ASCII.GetBytes(textBox1.Text); socket.Send(byteMessage); socket.Shutdown(SocketShutdown.Both); socket.Close(); // } // while(byteMessage!=null); } }} 子窗体打开另一个子窗体,DataGridView中重写数据不显示 求助:为什么我的数据不能存入数据库 关于制作名片的软件的开发 关于显示下载进度条 .net 网站搜索规则制定 获取listview里的所有值 请教:C#中有何函数可以用来检查文件名的合法性的? 网络视频地址嗅探的思路 根据网页下载地址如何生成手机二维码图片,求可用代码!!! TX text控件 求学习 请教俩个问题,这样的系统该怎么做? select查询问题,这次提问的清楚些
C端如下:
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.EnterpriseServices;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading; namespace TestSer
{
/// <summary>
/// Form1 的摘要说明。
/// </summary>
public class Form1 : System.Windows.Forms.Form
{
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.Container components = null; Thread mythread ;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.ListBox listBox1;
private System.Windows.Forms.Button button1;
Socket socket; public Form1()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent(); //
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
} /// <summary>
/// 清理所有正在使用的资源。
/// </summary>
protected override void Dispose( bool disposing )
{
try
{
socket.Close();//释放资源
mythread.Abort ( ) ;//中止线程
}
catch
{ }
if( disposing )
{
if (components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
} #region Windows 窗体设计器生成的代码
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.label1 = new System.Windows.Forms.Label();
this.listBox1 = new System.Windows.Forms.ListBox();
this.button1 = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// label1
//
this.label1.Location = new System.Drawing.Point(8, 8);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(184, 23);
this.label1.TabIndex = 0;
this.label1.Text = "label1";
//
// listBox1
//
this.listBox1.Dock = System.Windows.Forms.DockStyle.Right;
this.listBox1.ItemHeight = 12;
this.listBox1.Location = new System.Drawing.Point(200, 0);
this.listBox1.Name = "listBox1";
this.listBox1.Size = new System.Drawing.Size(424, 340);
this.listBox1.TabIndex = 1;
//
// button1
//
this.button1.Location = new System.Drawing.Point(8, 40);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(168, 23);
this.button1.TabIndex = 2;
this.button1.Text = "开始监听";
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// Form1
//
this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
this.ClientSize = new System.Drawing.Size(624, 349);
this.Controls.Add(this.button1);
this.Controls.Add(this.listBox1);
this.Controls.Add(this.label1);
this.Name = "Form1";
this.Text = "Socket服务器端";
this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
this.Load += new System.EventHandler(this.Form1_Load);
this.ResumeLayout(false); }
#endregion /// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.Run(new Form1());
} private void Form1_Load(object sender, System.EventArgs e)
{
} public static IPAddress GetServerIP() { IPHostEntry ieh=Dns.GetHostByName(Dns.GetHostName()); return ieh.AddressList[0]; } private void BeginListen() { IPAddress ServerIp=GetServerIP(); IPEndPoint iep=new IPEndPoint(ServerIp,8000); socket=new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp); byte[] byteMessage=new byte[100]; this.label1.Text=iep.ToString(); socket.Bind(iep); // do while(true) { try { socket.Listen(5); Socket newSocket=socket.Accept(); newSocket.Receive(byteMessage); string sTime = DateTime.Now.ToShortTimeString ( ) ; string msg=sTime+":"+"Message from:"; msg+=newSocket.RemoteEndPoint.ToString()+Encoding.Default.GetString(byteMessage); this.listBox1.Items.Add(msg); } catch(SocketException ex) { this.label1.Text+=ex.ToString(); } } // while(byteMessage!=null); } private void button1_Click(object sender, System.EventArgs e)
{
try {
mythread = new Thread(new ThreadStart(BeginListen)); mythread.Start();
}
catch(System.Exception er) {
MessageBox.Show(er.Message,"完成",MessageBoxButtons.OK,MessageBoxIcon.Stop);
}
}
}
}
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;using System.Net;
using System.Net.Sockets;
using System.Text; namespace TestClient
{
/// <summary>
/// Form1 的摘要说明。
/// </summary>
public class Form1 : System.Windows.Forms.Form
{
private System.Windows.Forms.Button button1;
private System.Windows.Forms.TextBox txtip;
private System.Windows.Forms.TextBox txtport;
private System.Windows.Forms.TextBox textBox1;
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.Container components = null; public Form1()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent(); //
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
} /// <summary>
/// 清理所有正在使用的资源。
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if (components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
} #region Windows 窗体设计器生成的代码
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.button1 = new System.Windows.Forms.Button();
this.txtip = new System.Windows.Forms.TextBox();
this.txtport = new System.Windows.Forms.TextBox();
this.textBox1 = new System.Windows.Forms.TextBox();
this.SuspendLayout();
//
// button1
//
this.button1.Location = new System.Drawing.Point(40, 216);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(160, 23);
this.button1.TabIndex = 0;
this.button1.Text = "发送消息";
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// txtip
//
this.txtip.Location = new System.Drawing.Point(40, 128);
this.txtip.Name = "txtip";
this.txtip.Size = new System.Drawing.Size(448, 21);
this.txtip.TabIndex = 1;
this.txtip.Text = "txtip";
//
// txtport
//
this.txtport.Location = new System.Drawing.Point(40, 152);
this.txtport.Name = "txtport";
this.txtport.Size = new System.Drawing.Size(448, 21);
this.txtport.TabIndex = 2;
this.txtport.Text = "txtport";
//
// textBox1
//
this.textBox1.Location = new System.Drawing.Point(40, 104);
this.textBox1.Name = "textBox1";
this.textBox1.Size = new System.Drawing.Size(448, 21);
this.textBox1.TabIndex = 3;
this.textBox1.Text = "textBox1";
//
// Form1
//
this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
this.ClientSize = new System.Drawing.Size(520, 373);
this.Controls.Add(this.textBox1);
this.Controls.Add(this.txtport);
this.Controls.Add(this.txtip);
this.Controls.Add(this.button1);
this.Name = "Form1";
this.Text = "Socket客户端";
this.Load += new System.EventHandler(this.Form1_Load);
this.ResumeLayout(false); }
#endregion /// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.Run(new Form1());
} private void Form1_Load(object sender, System.EventArgs e)
{
} private void button1_Click(object sender, System.EventArgs e)
{
BeginSend();
} private void BeginSend() { string ip=this.txtip.Text;
string port=this.txtport.Text;
IPAddress serverIp=IPAddress.Parse(ip);
int serverPort=Convert.ToInt32(port);
IPEndPoint iep=new IPEndPoint(serverIp,serverPort);
byte[] byteMessage;
Socket socket=new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
socket.Connect(iep);
byteMessage=Encoding.ASCII.GetBytes(textBox1.Text);
socket.Send(byteMessage);
socket.Shutdown(SocketShutdown.Both);
socket.Close(); // } // while(byteMessage!=null); }
}
}