(附源码)c#+winform实现远程开机(广域网可用)

实现逻辑

        利用UDP协议发送特定格式的魔术包,以远程唤醒具有特定MAC地址的目标计算机。目标计算机的BIOS和网络配置需要支持Wake-on-LAN(WOL)功能,并且需要在目标计算机上配置正确的网络唤醒设置。

源码在最后

准备工作

  1. 进入Bios,找到高级设置----》然后找到类似的电源管理、或者设备唤醒的字眼,各个主板所在的位置也不同,然后找到PCI-E设备唤醒,把这个设置为启用,然后保存,等待几秒电脑启动。
  2. 打开电脑的设备管理器,按照图示操作

        

3.win+r打开cmd 输入ipconfig/all。找到物理地址,复制出来等会要用。

4.打开允许远程协助,位置:打开控制面板-----系统和安全

如图所示按照此设置就OK了

源代码

private bool SendWakeOnLanPacket(string macAddress, string ipAddress, int port)
        {
            try
            {
                // 解析MAC地址
                byte[] macBytes = ParseMacAddress(macAddress);

                // 创建魔术包
                byte[] packet = new byte[102];
                for (int i = 0; i < 6; i++)
                {
                    packet[i] = 0xFF;
                }
                for (int i = 1; i <= 16; i++)
                {
                    Buffer.BlockCopy(macBytes, 0, packet, i * 6, 6);
                }

                // 创建UDP客户端
                UdpClient client = new UdpClient();
                client.Connect(IPAddress.Parse(ipAddress), port);
                client.Send(packet, packet.Length);
                client.Close();

                return true;
            }
            catch (Exception ex)
            {
                MessageBox.Show("发送魔术包时出错: " + ex.Message);
                return false;
            }
        }
      
        private byte[] ParseMacAddress(string macAddress)
        {
            string[] hex = macAddress.Split(':');
            if (hex.Length != 6)
            {
                throw new ArgumentException("无效的MAC地址格式。");
            }
            byte[] bytes = new byte[6];
            for (int i = 0; i < 6; i++)
            {
                bytes[i] = Convert.ToByte(hex[i], 16);
            }
            return bytes;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string macAddress = txtMacAddress.Text;
            string ipAddress = "192.168.1.20";
            int port = 30000;

            if (SendWakeOnLanPacket(macAddress, ipAddress, port))
            {
                MessageBox.Show("魔术包发送成功,等待目标电脑唤醒。此过程需要1-2分钟,请查看你的向日葵或者todesk是否显示在线!");
                
            }
            else
            {
                MessageBox.Show("魔术包发送失败,请检查输入和网络配置。");
            }
        }

此时你就可以实现在局域网内部开启电脑。

广域网远程

假设你的A电脑要远程开机B电脑,B电脑在局域网内,此时需要设置B电脑的路由器的端口转发,

使用场景:晚上突然需要加班,我在家用家里的电脑远程开启公司内的电脑,那么此时就是广域网。符合上述概念。

路由器设置:进入到公司B电脑所在路由器的管理界面,找到高级设置,有个叫端口转发或者虚拟服务器的页签,千万记住、不是端口触发,端口触发设置不了局域网内部的ip地址。

我的路由器叫虚拟服务器,进去之后点击新增,应该会有外部端口、内部端口、ip地址等等,类似于这样

服务名称随便起一个,外部端口范围随便写,比如说4666-4666

内部端口4666-4666、再写入你的B电脑的ip地址,然后就可以实现在家远程自己的电脑啦。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/786111.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

NB!小哥竟然绕过了安全启动,Dump了SoC的BootROM。

原文&#xff1a;Amlogic S905 SoC: bypassing the (not so) Secure Boot to dump the BootROM译者&#xff1a;TrustZone 推荐语&#xff1a; 这是一篇关于如何绕过安全启动&#xff0c;然后实现破解BootRom的文章。通过这篇文章&#xff0c;可以让你对于ATF、安全启动等有个…

快人一步:预防勒索病毒的利器

在当今日益复杂的网络安全环境中&#xff0c;各种病毒、勒索软件层出不穷&#xff0c;对个人电脑、企业服务器甚至国家信息安全构成严重威胁。而白名单可信机制作为一种有效的安全防护手段&#xff0c;在防勒索病毒中发挥着至关重要的作用。 一、白名单可信机制概述 白名单可信…

3Python的Pandas:数据选取

1.数据选取操作 1.1. 选取单列 df[Q1]df[Q2]1.2. 选取多列 df[[team,Q1]]df.loc[:,[team,Q1]]1.3.选择行 使用指定索引选择 df[df.indexAck]选择前n行 df[0:3]df.iloc[:10,:]1.4. 前n行&#xff0c;每隔m选择一个 df[0:10:3]1.5. 条件选择 df[df.Q1>90]df[(df.teamC…

C#知识|账号管理系统:使用带参数的SQL语句编程添加账号的方法。

哈喽,你好啊,我是雷工! 前边学习了登录窗体的实现,接下来接着学习使用带参数的SQL语句编程添加账号的方法。 以下为学习笔记。 01 非带参数方法 在DAL数据访问层编写AccountServer.cs类代码。 按照前面的练习,写法如下: public int AddAccount(Account account) {//定义S…

【关于车载测试的基础知识的认知详解】

目录 一、目前车企的趋势 1. 电动化&#xff1a; 2. 自动驾驶技术&#xff1a; 3. 车联网&#xff08;Connected Cars&#xff09;&#xff1a; 4. 智能化和数字化&#xff1a; 5. 安全性&#xff1a; 6. 轻量化&#xff1a; 7. 个性化和定制化&#xff1a; 8. 供应链…

HTML(27)——渐变

渐变是多个颜色逐渐变化的效果&#xff0c;一般用于设置盒子模型 线性渐变 属性&#xff1a;background-image : linear-gradient( 渐变方向 颜色1 终点位置, 颜色2 终点位置, ......&#xff09;&#xff1b; 取值: 渐变方向:可选 to 方位名词角度度数 终点位置:可选 百分…

kafka的副本replica

指定topic的分区和副本 通过kafka命令行工具 kafka-topics.sh --create --topic myTopic --partitions 3 --replication-factor 1 --bootstrap-server localhost:9092 执行代码时指定分区个数

榨汁机脱毛仪25N60-NMOS管 惠海HC031N06L60V25A 沟槽工艺低RDS 高功率

NMOS管的工作原理&#xff1a;NMOS管是利用VGS&#xff08;栅极-源极电压&#xff09;来控制“感应电荷”的多少&#xff0c;以改变由这些“感应电荷”形成的导电沟道的状况&#xff0c;从而达到控制漏极电流的目的1。在制造管子时&#xff0c;通过工艺使绝缘层中出现大量正离子…

虚拟现实3d场景漫游体验实现了“所见即所得”

如今&#xff0c;从实体店铺到工厂企业&#xff0c;再到政府单位&#xff0c;各行各业都已纷纷加入VR数字化升级的行列&#xff0c;相比传统的2D商品展示&#xff0c;三维交互展示成为商企客户交流的主流方式。产品展示、服务介绍、考察洽谈等都可以通过在3D虚拟场景网站中真实…

最新版萌新Python看过最好的电子书?

我之前写过一篇 Python 入门看哪些书的文章&#xff0c;文章中罗列了 5 位大佬的书单推荐&#xff0c;在这个基础上我总结了自己看过的书单。你要是不知道学 Python 看什么书好&#xff0c;不妨参考一下&#xff1a; 一晃就到了月末&#xff0c;2020年也过去了 2 个月&#xf…

【解决ERROR】usage:conda [-h][-V] command... conda:error:unrecognized arguments

解决方法 conda env create --file conda3_520_env_deepPath.yml

AI:助力开发者翱翔,而非抢夺其舞台

在当今这个科技飞速发展的时代&#xff0c;人工智能&#xff08;AI&#xff09;犹如一股春风&#xff0c;悄然渗透进全球各个行业&#xff0c;尤其在软件开发领域&#xff0c;其影响力日益显著。从初创企业到跨国巨头&#xff0c;无一不在积极探索AI如何重塑编程的面貌&#xf…

springboot校园服装租赁系统-计算机毕业设计源码30824

目 录 摘要 1 绪论 1.1 研究背景与意义 1.2国内外研究现状 1.3论文结构与章节安排 2 校园服装租赁系统分析 2.1 可行性分析 2.1.1 技术可行性分析 2.1.2 经济可行性分析 2.1.3 法律可行性分析 2.2 系统功能分析 2.2.1 功能性分析 2.2.2 非功能性分析 2.3 系统用例…

Hadoop-20 Flume 采集数据双写至本地+HDFS中 监控目录变化 3个Agent MemoryChannel Source对比

章节内容 上一节完成了如下的内容&#xff1a; 编写Agent Conf配置文件收集Hive数据汇聚到HDFS中测试效果 背景介绍 这里是三台公网云服务器&#xff0c;每台 2C4G&#xff0c;搭建一个Hadoop的学习环境&#xff0c;供我学习。 之前已经在 VM 虚拟机上搭建过一次&#xff0…

网页提示“非私密连接”怎么办?

当网页提示“非私密连接”或“您与该网站的连接不是私密连接”&#xff0c;这通常意味着浏览器无法建立一个安全的HTTPS连接。HTTPS协议是HTTP协议的安全版本&#xff0c;通过SSL协议加密数据传输&#xff0c;以保护用户的数据免受中间人攻击或监听。主要有下面几个原因&#x…

vue3自自定义插件注册全局事件

一. 首先在components中定义自定义组件 二. 然后在components下建立一个index.ts文件 index.ts中的代码如下 // 引入项目中全部的全局组件 import SvgIcon from ./SvgIcon/index.vue import pagination from ./pagination/index.vue // 全局对象 const allGloablComponen…

66条AI共创文章润色秘诀,一键提升你的写作水平

猫头虎 &#x1f42f; 建联猫头虎&#xff0c;商务合作&#xff0c;产品评测&#xff0c;产品推广&#xff0c;个人自媒体创作&#xff0c;超级个体&#xff0c;涨粉秘籍&#xff0c;一起探索编程世界的无限可能&#xff01; 掌握这些提示词和指令&#xff0c;让你的AI创作更…

centos7停服之后换阿里云的源

原因&#xff1a; Centos7停止维护 CentOS 7 官方支持在2024年6月30日结束。如果您正在使用CentOS 7&#xff0c;建议迁移到另一个仍在维护的Linux发行版&#xff0c;如CentOS Stream、AlmaLinux、Rocky Linux或者转换到使用Debian或Ubuntu。国产的华为的&#xff1a;openEule…

数据结构(初阶1)

文章目录 一、复杂度概念 二、时间复杂度 2.1 大O的渐进表示法 2.2 时间复杂度计算示例 2.2.1. // 计算Func2的时间复杂度&#xff1f; 2.2.2.// 计算Func3的时间复杂度&#xff1f; 2.2.3.// 计算Func4的时间复杂度&#xff1f; 2.2.4.// 计算strchr的时间复杂度&#xff1f; …

Windows与time.windows.com同步time出错(手把手操作)

今天我来针对Windows讲解Time同步 时间问题 计算机的时间不同&#xff0c;过快或者过慢。&#xff08;可以和自己的手机时间进行对比&#xff0c;手机的时间进行同步的频率会比计算机更快&#xff0c;因此更精准&#xff09;计算机time过快和过慢&#xff0c;会导致使用过程中…