C#网络唤醒

  1. public partial class MainWindow : Window
  2. {
  3. //通过正则表达式设定MAC地址筛选标准,关于正则表达式请自行百度
  4. const string macCheckRegexString = @"^([0-9a-fA-F]{2})(([/\s:-][0-9a-fA-F]{2}){5})$";
  5. private static readonly Regex MacCheckRegex = new Regex(macCheckRegexString);
  6. public MainWindow()
  7. {
  8. InitializeComponent();
  9. }
  10. //唤醒主要逻辑方法
  11. public static bool WakeUp(string mac)
  12. {
  13. //查看该MAC地址是否匹配正则表达式定义,(mac,0)前一个参数是指mac地址,后一个是从指定位置开始查询,0即从头开始
  14. if (MacCheckRegex.IsMatch(mac, 0))
  15. {
  16. byte[] macByte = FormatMac(mac);
  17. WakeUpCore(macByte);
  18. return true;
  19. }
  20. return false;
  21. }
  22. private static void WakeUpCore(byte[] mac)
  23. {
  24. //发送方法是通过UDP
  25. UdpClient client = new UdpClient();
  26. //Broadcast内容为:255,255,255,255.广播形式,所以不需要IP
  27. client.Connect(System.Net.IPAddress.Broadcast, 50000);
  28. //下方为发送内容的编制,6遍“FF”+17遍mac的byte类型字节。
  29. byte[] packet = new byte[17 * 6];
  30. for (int i = 0; i < 6; i++)
  31. packet[i] = 0xFF;
  32. for (int i = 1; i <= 16; i++)
  33. for (int j = 0; j < 6; j++)
  34. packet[i * 6 + j] = mac[j];
  35. //唤醒动作
  36. int result = client.Send(packet, packet.Length);
  37. }
  38. private static byte[] FormatMac(string macInput)
  39. {
  40. byte[] mac = new byte[6];
  41. string str = macInput;
  42. //消除MAC地址中的“-”符号
  43. string[] sArray = str.Split(‘-‘);
  44. //mac地址从string转换成byte
  45. for (var i = 0; i < 6; i++)
  46. {
  47. var byteValue = Convert.ToByte(sArray[i], 16);
  48. mac[i] = byteValue;
  49. }
  50. return mac;
  51. }
  52. private void Button_Click_1(object sender, RoutedEventArgs e)
  53. {
  54. WakeUp("00-01-80-7E-C3-D2");
  55. }
  56. }

null

时间: 2024-10-12 03:55:05

C#网络唤醒的相关文章

Python WOL/WakeOnLan/网络唤醒数据包发送工具

按照WOL协议规定,在电脑处于关机而网卡供电状态下,从网络上接收到WOL魔法包后会自动加电开机.这种方式能够很方便的使用在需要进行远程管理的环境中.此程序实现了网络唤醒的魔法数据包发送功能,可以实现远程开机. 假设需要被唤醒PC网卡MAC地址为:01:02:03:04:05:06 则WOL魔法包结构如下: FF FF FF FF FF FF | 01 02 03 04 05 06 ...重复16次... 01 02 03 04 05 06 | 00 00 00 00 00 00 前段的6字节0x

内网NAS的远程网络唤醒

本文首次发布于2017年5月5日 NAS的设置 在NAS里,在设置里开启网络唤醒的功能,这个是必须的,但是这样开启后,内网可以唤醒,外网不行,于是接下来看 路由器的设置 路由器很重要的一点就是ARP绑定,因为端口映射需要MAC地址,所以ARP绑定必须把NAS的地址和MAC地址进行绑定,这也试试完成了第一步,因为公网IP是不停变化的,这就需要DDNS. <内网NAS的远程网络唤醒> 路由器的DDNS 一般的路由器DDNS很好设置,尤其是DDWRT更好设置,网上教程一大堆,但是对于这个特殊的路由器

网络唤醒(WOL)全解指南:原理篇

https://www.cnblogs.com/zhanggaoxing/p/9657545.html 什么是网络唤醒 网络唤醒(Wake-on-LAN,WOL)是一种计算机局域网唤醒技术,使局域网内处于关机或休眠状态的计算机,将状态转换成引导(Boot Loader)或运行状态.无线唤醒(Wake-on-Wireless-LAN,WoWLAN)作为 WOL 的补充技术,使用无线网卡去唤醒计算机.网络唤醒在一般的局域网环境里使用有限广播地址(255.255.255.255)即可,由于路由器都不转

杰云科技发布高性能通用ARM云终端

随着云计算产业在国内的蓬勃发展,ARM云终端以其优良的可靠性.超长的使用寿命.安全的软件系统,超高的性价比等特点,越来越受到市场的青睐.深圳市杰云科技有限公司率先基于国产高性能ARM处理器,发布了最新款的J90系列云终端,从指标上看,该型号云终端是目前硬件规格最高.软件特性最丰富的云终端软硬件平台之一. 图 1 杰云J90系列云终端 鉴于目前国内云终端方案长时间"借用"平板(机顶盒)方案的现状,杰云科技的技术团队在2016开始,联合深圳市中兴微电子技术有限公司(前中兴通讯微电子研究院)

win7关机后cpu风扇转

主板: B150M-D3H 系统:win7旗舰版 故障现象:系统关机后,cpu风扇继续转,主板指示灯继续亮,屏幕是熄灭的,再按开机键,无法出现BIOS和系统界面,只能强制关机,每次都是如此. 解决措施:关闭主板的网络唤醒,即wake on lan选择disable.

Linux运维常用知识(4)

linux命令无效-bash: ls: command not found 一次重启后开机,基本所有的命令都不可用,只有少数的命令可用 [[email protected] ~]# ll -bash: ls: command not found [[email protected] ~]# pwd /root [[email protected] ~]# shutdown -r now -bash: shutdown: command not found [[email protected] ~

联想教育应用使用说明(7.6版本号)——第4章 网络控制工具的使用

第4章网络控制工具的使用 第1章联想教育应用方案功能简单介绍http://blog.csdn.net/u013634961/article/details/39615525 第2章联想教育应用的首次部署http://blog.csdn.net/u013634961/article/details/39616325 第3章联想教育应用的日常维护与使用 http://blog.csdn.net/u013634961/article/details/39804509 第4章网络控制工具的使用 http

联想教育应用使用说明(7.6版本号)——第5章 常见的问题与解答

第5章常见的问题与解答 第1章联想教育应用方案功能简单介绍http://blog.csdn.net/u013634961/article/details/39615525 第2章联想教育应用的首次部署http://blog.csdn.net/u013634961/article/details/39616325 第3章联想教育应用的日常维护与使用 http://blog.csdn.net/u013634961/article/details/39804509 第4章网络控制工具的使用 http:

电脑睡眠状态(ACPI规范定义了七个状态,使用powercfg -a进行查看)

ACPI规范定义了一台兼容ACPI的计算机系统可以有以下七个状态(所谓的全局状态): G0('S0)正常工作状态:计算机的正常工作状态-操作系统和应用程序都在运行.CPU(s)执行指令.在这个状态下(即没有进入G1睡眠),CPU和像硬盘.DVD驱动器等等这些的设备可以一再的进入和从低能源状态回来,叫做C0-Cn和D0-D3.(例如膝上型计算机,当使用电池运行的时候通常关掉所有当前未使用的设备:一些桌面型计算机也这么做来减少噪声.) G1 睡眠 细分为从S1到S4这四种状态.系统从这几种状态被唤醒