c/s架构客户端和主控端的数据传输

chinarodney 2008-11-10 02:54:02
我是C#初学者,在做一个类似QQ的小软件,有一个问题,就是在客户端如何向服器端发送数据,我用的是C/S架构,谢谢
...全文
222 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
lifigo163 2008-11-11
  • 打赏
  • 举报
回复
学习
大头_衍 2008-11-10
  • 打赏
  • 举报
回复
看看!!帮顶!!!
xu_2007 2008-11-10
  • 打赏
  • 举报
回复
P2P现在都是用的UPNP来映射固定的端口使其可以不同内网之间的通信的吧
zhangkewen1234 2008-11-10
  • 打赏
  • 举报
回复
难道是传说中的 UPNP
zhangkewen1234 2008-11-10
  • 打赏
  • 举报
回复
学习,什么叫路由器打洞???
sunshine_anycall 2008-11-10
  • 打赏
  • 举报
回复
学习,up
sungod333 2008-11-10
  • 打赏
  • 举报
回复
类似QQ的话,研究下SOCKET 以后,还得研究一下路由器打洞。也就是简单的P2P。。

GOOGLE一下,源码不少,看源码之前先消化理论。
starrain95 2008-11-10
  • 打赏
  • 举报
回复

using System;
using System.IO;
using System.Net;
using System.Net.Sockets;
using System.Text;

class MyTCPClient
{
static void Main(string[] args)
{
Connect("127.0.0.1","abc");
}

static void Connect(String server, String message)
{
try
{
Int32 port = 13000;
TcpClient client = new TcpClient(server, port);

Byte[] data = System.Text.Encoding.ASCII.GetBytes(message);

NetworkStream stream = client.GetStream();

stream.Write(data, 0, data.Length);

Console.WriteLine("Sent: {0}", message);

data = new Byte[256];

String responseData = String.Empty;

Int32 bytes = stream.Read(data, 0, data.Length);
responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes);
Console.WriteLine("Received: {0}", responseData);

stream.Close();
client.Close();
}
catch (ArgumentNullException e)
{
Console.WriteLine("ArgumentNullException: {0}", e);
}
catch (SocketException e)
{
Console.WriteLine("SocketException: {0}", e);
}

Console.WriteLine("\n Press Enter to continue...");
Console.Read();
}

}


starrain95 2008-11-10
  • 打赏
  • 举报
回复

using System;
using System.IO;
using System.Net;
using System.Net.Sockets;
using System.Text;

class MyTcpListener
{
public static void Main()
{
TcpListener server = null;
try
{
// Set the TcpListener on port 13000.
Int32 port = 13000;
IPAddress localAddr = IPAddress.Parse("127.0.0.1");

// TcpListener server = new TcpListener(port);
server = new TcpListener(localAddr, port);

// Start listening for client requests.
server.Start();

// Buffer for reading data
Byte[] bytes = new Byte[256];
String data = null;

// Enter the listening loop.
while (true)
{
Console.Write("Waiting for a connection... ");

// Perform a blocking call to accept requests.
// You could also user server.AcceptSocket() here.
TcpClient client = server.AcceptTcpClient();
Console.WriteLine("Connected!");

data = null;

// Get a stream object for reading and writing
NetworkStream stream = client.GetStream();

int i;

// Loop to receive all the data sent by the client.
while ((i = stream.Read(bytes, 0, bytes.Length)) != 0)
{
// Translate data bytes to a ASCII string.
data = System.Text.Encoding.ASCII.GetString(bytes, 0, i);
Console.WriteLine("Received: {0}", data);

// Process the data sent by the client.
data = data.ToUpper();

byte[] msg = System.Text.Encoding.ASCII.GetBytes(data);

// Send back a response.
stream.Write(msg, 0, msg.Length);
Console.WriteLine("Sent: {0}", data);
}

// Shutdown and end connection
client.Close();
}
}
catch (SocketException e)
{
Console.WriteLine("SocketException: {0}", e);
}
finally
{
// Stop listening for new clients.
server.Stop();
}


Console.WriteLine("\nHit enter to continue...");
Console.Read();
}
}
heyu1000 2008-11-10
  • 打赏
  • 举报
回复
客户端登陆的时候连接服务器,通讯直接用SOCKET就可以了啊。
acqy 2008-11-10
  • 打赏
  • 举报
回复
。。。。。。
1、用SOCKET
2、用Remoting/WebService/WCF
【资源说明】 基于QT开发的一款远程控制软件源码+项目说明+详细注释+exe执行程序.zip 基于QT开发的一款远程控制软件,采用C/S架构中的反向连接,主控作为服务器,被控作为客户,被控主动连接主控的IP和口,且被控序作为后台程序运行。 四个主要功能:键盘监控、文件监控、屏幕监控、命令行控制器。 截图演示: ![img-界面](./gallery/界面.jpg) 全部功能 屏幕监控 在客户截屏,接着使用JEPG压缩,最后传输给服务,形成一个动态的连续画面; 服务器发送指令,客户不断传送截屏的数据,使用Qt的QPixmap类画到窗口上,进而达到实时监控的效果。 键盘监控 客户启动一个新线程来做监控,创建一个不可见的窗口来处理win32事件。安装键盘钩子来截取系统的所有键盘输入,定时发送窃取的数据; 服务接收客户发过来的键盘数据,然后打印到窗口里。 文件监控 客户编写遍历目录和遍历文件夹函数,以及查找所有盘符。创建新线程,连接到服务器,接收和处理来自服务器的指令和数据等。以及添加处理文件的功能,获取文件、下载文件、上传文件、删除文件。发送文件到服务和从服务接收文件都要开启一个新线程。 服务。添加服务客户发送的指令和客户向服务发送的指令,添加处理指令来获取所有盘符、客户目录下的所有目录和文件。以及添加处理文件的功能。 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!
智 能 化 设 计 方 案 壹、网络监控系统需求方案 一、项目背景 随着社会发展以及管理水平的逐步提高,人们对管理自动化以及自身安全的关注程 度也在逐步加强。本着"以人为本、科学发展"的原则 ,中心在提高工作人员的素质以及服务意识的同时,通过拥有一套技术先进、高度智能 化的视频监控管理系统,实现物防、人防、技术防范三者之间的协调统一,实现中心现 代社会管理。 二、系统实现的功能要求: 设计原则: 1、监控效果好、无死角 2、录像保存时间达到 —————天 3、统一前台监控软件,具备网络监控功能 4、集中管理/统一控制平台:可集中管理摄像机视频数据,可在监控中心完成如:远 程设置、远程控制、远程信息及状态查询等多种管理设置工作. 5、远程监看:通过网络授权,实现远程监看 整个工程的安全性和可靠性;应用产品的可靠性和兼容性;系统具有未来的可扩展 性;集中控制、布局合理;施工方便、价格合理、外形美观;架构合理、低成本、低维护 量,具体要求如下: 实时对各楼层进行高清晰视频监控 实时对各个楼梯出入口进行高清晰视频监控 可录制各点的视频录像以备安防查用 调节镜头焦距可以清晰的观测到大厅窗口和工作间的工作具体细节 系统监控中心通过电脑实现高度智能化控制管理,包括前网络智能球的云台镜 头控制、多画面同屏分割显示、画面分组自动轮巡切换、图片抓拍、电子地图等 功能,提供实时、定时、报警触发、随时启停等多种录像模式以及对录像资料的 智能化快速回放查询; 系统监控中心要求实时显示所有图像,并且可以任意调用、放大指定的图像、自 动将报警对应的图像切换;视频图像达到四级以上质量等级; 系统网内的主控管理电脑和经授权的电脑可以任意调用视频图像的录像资料; 远程集中监控:各前段设备的远程视频情况全部集中到监控中心,动态检测录像 会自动集中到中心监控.也可以实现传统视频监控系统的功能(防盗监控、管理 监控);远程WEB配置管理、使用方便;监控中心以外的远程监控点可以通过 IE 的和安装客户软件的方式进行监控。 三、总体设计 (一)前图像采集部分 1、室内采用半球形摄像机。具体分布:系统共有 ———台摄像机,分别设计在大楼内的各类进出口及大厅等场所安装监控探头进行现场实时 监视录像,有效地杜绝隐患发生等。 安置半球摄像机xx台,分布位置: 一层:xx用于监控整个一楼大厅; 二层:xx; 三层:xx个,分别安装于大厅及各主要通道出入口; 四层:xx个; 监控中心设在x楼机房:监视器、硬盘录像机等集中监控。 2、室外采用枪式摄像机。具体分布:系统共有 —- —台摄像机,分别设计在大门口及各主要通道。 安置枪式摄像机 -— -台,分布位置: (1): (2): (3): 3、特殊部位采用一体式球形摄像机.具体分布:系统共有 ———台摄像机,分别设计在 —-—-—和 —-———位置.能够—-—-—-———-。 安置一体化球形摄像机———台,分布位置: (1): (2): (3): (二)、图像和控制信号传输部分 中心监控系统视频信号采用网络传输,根据摄像机安装位置分别采用光缆和网线传 输,以保证监控信息的准确传输。网线设计采用Cat5 cable网线,光缆设计采用GYTA- 6B1。3,电源线采用RVV2*1.5电缆。 (三)、图像控制存储部分 在监控室设计视频切换器(切换的控制要求和云台、镜头的控制同步)21英寸监视器 x台,录像系统设计采用x台16路24小时长时间硬盘录像机。设计整个录像系统可以连续 保存录像资料至少——-日,系统支持监视录像与回放工作。 四、系统主要设备品牌及特性要求 产品必须符合国家相关的法律、法规的要求.摄像机、硬盘录像机等产品,须有制造 厂家产品授权书或者代理商授权等。 1、嵌入式网络硬盘录像机 在图象存储上采用目前通用也是较流行的数字硬盘录像技术,品牌选用海康威视 数字硬盘录像机的技术参数如下: 2、半球摄像机技术参数 品牌用海康威视,具体参数如下: 3、枪式摄像机技术参数 品牌用海康威视,具体参数如下: 3、一体化球形摄像机技术参数 品牌用海康威视,具体参数如下: 五、安防监控系统主要设备名称一览表 说明: 1. 设备提供1年质保; 2. 提供设备品牌性型号、规格以及详细参数. 贰、综合布线系统设计方案 一、本方案设计所遵循的原则: 1、充分满足甲方功能上的需求。 2、结构和性能上都留足余量和升级空间。 3、遵循业界先进标准。 4、本着结构合理,高效低成本的原则。 5、用户使用上和管理上的灵活性。 本方案书分为综合布线系统客户需求分析、开放式布线系统方案设计、服务和附录四部 分。方案设计一章中详细描述了该综合布线系统的总体结构和各子系统的设计细节,包括 布线系统的需求分析、布线路由、器件选型、材料清单和系统检测等部分.服务中论述了

110,567

社区成员

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

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

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