From 11bc60af26b643dd52d3b486487b3dfa8c7049f7 Mon Sep 17 00:00:00 2001 From: j502647092 Date: Fri, 7 Aug 2015 14:42:39 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=A2=E6=88=B7=E7=AB=AF=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=BC=80=E6=9C=BA=E8=87=AA=E5=8A=A8=E5=90=AF=20=E6=9C=8D?= =?UTF-8?q?=E5=8A=A1=E7=AB=AF=E6=B7=BB=E5=8A=A0=E6=8C=87=E4=BB=A4=E7=B3=BB?= =?UTF-8?q?=E7=BB=9F...?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- UDPClient/Frm_Client.cs | 7 +++++++ UDPServer/ServerListen.cs | 31 ++++++++++++++++++++++++++++--- 2 files changed, 35 insertions(+), 3 deletions(-) diff --git a/UDPClient/Frm_Client.cs b/UDPClient/Frm_Client.cs index c2c54c4..02fce69 100644 --- a/UDPClient/Frm_Client.cs +++ b/UDPClient/Frm_Client.cs @@ -9,6 +9,7 @@ using System.Net.Sockets; using System.Text; using System.Threading; using System.Windows.Forms; +using Microsoft.Win32; using UDPClient.Properties; namespace UDPClient @@ -30,6 +31,12 @@ namespace UDPClient private void Frm_Client_Load(object sender, EventArgs e) { + //开机自启动添加 + string path = Application.ExecutablePath; + RegistryKey rk = Registry.LocalMachine.CreateSubKey(@"Software\Microsoft\Windows\CurrentVersion\Run"); + rk.SetValue("SixiBroadcast", path); + rk.Close(); + //初始化数据 client = new UdpClient(new IPEndPoint(IPAddress.Any, 25333)); serverendpoint = new IPEndPoint(IPAddress.Loopback, 25433); //启动客户端监听 diff --git a/UDPServer/ServerListen.cs b/UDPServer/ServerListen.cs index 04abc13..b578a9a 100644 --- a/UDPServer/ServerListen.cs +++ b/UDPServer/ServerListen.cs @@ -20,11 +20,36 @@ namespace UDPServer //启动客户端监听 Thread t = new Thread(new ThreadStart(ClientThread)); t.Start(); + Console.WriteLine("请输入指令 或者 /help 查看帮助"); while (true) { - Console.WriteLine("请输入需要公告的内容: "); string msg = Console.ReadLine(); - BroadcastMsg(msg); + if (msg.StartsWith("/")) + { + switch (msg.Substring(1)) + { + case "help": + Console.WriteLine("/list 查看在线人员"); + Console.WriteLine("/broadcast 发送公告"); + break; + case "list": + Console.Write("当前在线(" + userinfo.Keys.Count + "): "); + foreach (var item in userinfo) + { + Console.Write(item.Key + " "); + } + break; + case "broadcast": + if (msg.IndexOf(' ') > 0) + BroadcastMsg(msg.Substring(msg.IndexOf(' '))); + else + Console.WriteLine("请输入公告内容!"); + break; + default: + Console.WriteLine("未知命令 请输入指令 或者 /help 查看帮助"); + break; + } + } } } @@ -67,7 +92,7 @@ namespace UDPServer else { userinfo.Add(user, addr); - Console.WriteLine("用户: " + user + " 登录服务器 IP: " + ip + " 端口: " + port); + Console.WriteLine("用户: " + user + " 登录服务器 IP: " + ip + " 端口: " + port + "当前在线: " + userinfo.Keys.Count); } } }