资源简介
这是一个用C#写的Socket服务器和客户端,当然Socket服务器和客户端不是主要的(有兴趣的朋友可以参考下),主要的内容是介绍如何通过这种Socket方式发送Object对象。
作者博客 http://luyugao.com
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Threading;
using System.Net;
using System.Net.Sockets;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
using User;
//object对象是通过user类派生的,这里引用的是User.dll
// 作者博客: http://www.luyugao.com
namespace Client
{
public partial class Client : Form
{
public Client()
{
InitializeComponent();
}
Socket mySocket;
///
/// 接收信息缓冲区大小
///
int packetSize = 1024 * 50;
private void bt_lj_Click(object sender EventArgs e)
{
try
{
if (tb_ip.Text.Trim() != ““ && tb_port.Text.Trim() != ““)
{
IPEndPoint iep;
try
{
iep = new IPEndPoint(
IPAddress.Parse(tb_ip.Text) Convert.ToInt32(tb_port.Text)
);
}
catch (Exception ex) { MessageBox.Show(ex.Message); return; }
mySocket = new Socket(AddressFamily.InterNetwork SocketType.Stream ProtocolType.Tcp);
mySocket.Connect(iep);
Thread t = new Thread(resMsg);
t.IsBackground = true;
t.Start();
bt_lj.Enabled = false;
bt_sendobject.Enabled = bt_sendStr.Enabled = true;
}
}
catch (Exception ex) { MessageBox.Show(ex.Message); }
}
//object对象是通过user类派生的,这里引用的是User.dll
// 作者博客: http://www.luyugao.com
///
/// 循环接收信息
///
void resMsg()
{
while (true)
{
byte[] by = new byte[packetSize];
int length = -1;
try
{
length = mySocket.Receive(by);
}
catch (SocketException) { break; }
catch (Exception) { break; }
if (length < 2)//消息异常
continue;
string _cmd = getMsgHead(by);
switch (_cmd)
{
case “01“://文本消息
string Msg = Encoding.UTF8.GetString(by 2 length - 2);
showMsg(Msg);
break;
case“02“://对象消息
showMsg(“收到对象、信息如下:“);
byte[] by1=new byte[length-2];
Buffer.BlockCopy(by 2 by1 0 by1.Length);
object _obj = Deserialize(by1);
user _u = _obj as user;
string s = st
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 16384 2013-07-18 17:28 Sendob
文件 34304 2013-07-18 17:28 Sendob
文件 11608 2013-07-18 17:30 Sendob
文件 4096 2013-07-18 17:00 Sendob
文件 8252 2013-07-18 17:28 Sendob
文件 3631 2013-07-18 17:01 Sendob
文件 14119 2013-07-18 17:22 Sendob
文件 5817 2013-07-18 17:22 Sendob
文件 180 2013-07-18 17:22 Sendob
文件 691 2013-07-18 17:30 Sendob
文件 976 2013-07-18 17:22 Sendob
文件 4257 2013-07-18 17:01 Sendob
文件 16384 2013-07-18 17:28 Sendob
文件 34304 2013-07-18 17:28 Sendob
文件 180 2013-07-18 17:01 Sendob
文件 5419 2013-07-18 17:29 Sendob
文件 468 2013-07-18 16:06 Sendob
文件 1344 2013-07-18 16:06 Sendob
文件 2864 2013-07-18 16:06 Sendob
文件 5612 2013-07-18 16:06 Sendob
文件 1093 2013-07-18 16:06 Sendob
文件 249 2013-07-18 16:06 Sendob
文件 14848 2013-07-18 17:21 Sendob
文件 34304 2013-07-18 17:21 Sendob
文件 11608 2013-07-18 17:31 Sendob
文件 4096 2013-07-18 17:00 Sendob
文件 11718 2013-07-18 17:21 Sendob
文件 5261 2013-07-18 17:18 Sendob
文件 5817 2013-07-18 17:18 Sendob
文件 789 2013-07-18 15:20 Sendob
............此处省略57个文件信息
- 上一篇:如鹏网2019 .NET高级开发就业班.rar
- 下一篇:云图等高线图绘制算法源码
相关资源
- c#IPCO多线程并发业务处理
- C# socket通信的服务器和客户端
- SharpTcpScanner扫描器1.9版
- C#基于TCP的Socket多线程通信包含服务端
- C#Socket多线程聊天室
- C#Socket 封装了Tcp/Udp传输字串、文件、
- 基于C#net4.5实现最简单的websocket客户端
- C# Socket_服务端向指定的客户端发送消
- C#.net udp 点对点聊天程序
- c#源码 Socket 负载均衡
- TCP_ServerAndClient.rar
- C# Socket实现TCPClient
- C#winform TCP通信 UDP通信 Socket通信 vs2
- C# SOCKET TCP UDP测试工具及源代码
- C#Socket异步服务器 IOCP 源码
- C# 推送数据 SOCKET 完整
- vs2010 c#编写的websocket 同时支持TCP和
- C#超级通信调试工具
- C#实现Socket高性能、大容量并发附完整
- websocket-sharp.dll文件
- C# ASP.NET MVC WebSocket
- C#socket 大文件传输 分段传输 C#DEMO
- C# Socket TCP和UDP报文及端口测试工具的
- C#网络调试助手源码.rar
- C#高性能大容量SOCKET并发完成端口有
- C# 异步TCP Socket 多人聊天室1服务器,
- websocketService服务端(c#)
- C# socket smtp 邮件发送(支持SSL)源码
- C# socket网络通讯程序
- c# socket抓包 混合抓包工具。
评论
共有 条评论