吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 10398|回复: 50
收起左侧

[原创工具] 【VB.NET源码】远程关机工具(基于腾讯文档,可自行修改)

  [复制链接]
yangcongs 发表于 2019-8-1 11:46
本帖最后由 yangcongs 于 2019-8-8 08:06 编辑


背景
因为工作需要,经常两个办公室跑,两个办公室离得还有点远
下了班还要两头跑着关电脑,感觉很麻烦
所以想找一个远程关机的小程序
论坛搜索出了很多大神的作品
比如:
夕风远程关机工具V1.1 , 可实现远程关机、定时关机、取消关机 (基于有道云)https://www.52pojie.cn/thread-994803-1-1.html
通过网易云歌单 远程关机(基于网易云)https://www.52pojie.cn/thread-853364-1-1.html
远程关机工具--ReShutDown--【VB源码】(基于贴吧)https://www.52pojie.cn/thread-447688-1-1.html
等等

但是跟我预期的有点差别
有道云和网易云我平时用的不多,为了远程关机再去多用一个软件什么的觉得有点麻烦了
至于基于贴吧的,首先要有一个自己的贴吧,然后我觉得楼主自己都被坑了,一不小心被别人关机,很心塞,

然后就想着干脆自己写一个好了,刚好自己知道一点点VB,于是本作品就诞生了


过程
因为我平时TIM用的比较多,TIM上又内置的有腾讯文档,所以本程序是基于腾讯文档制作的

本来看到@yswqq2008 开源了自己的程序,有一点点小激动,想着改一下网站什么的就好了
但是结果啪啪啪打脸,大佬的软件是通过读取网页源码来找到指令的
不过这些个云文档的网页源码里并没有加载出文档内容,他们好像是二次加载(这么描述大佬应该懂我的意思吧)出来的

由于我不懂怎么去爬数据,所以直接获取网页源码并不能获取到指令

@fantastic@xiyuboy 两位大佬应该是会的,但是我请教@fantastic并没有收到回复
郁闷了好几天,灵光一闪,何不利用WebBrowser控件把网页加载进form
然后网页到了自己的地盘不是想怎么盘怎么盘

下面是本程序获取远端指令的代码:

[Visual Basic] 纯文本查看 复制代码
        If (WebBrowser1.Document IsNot Nothing) Then
            Dim Elems As HtmlElementCollection
            Dim WebOC As WebBrowser = WebBrowser1
            Elems = WebOC.Document.GetElementsByTagName("div") '取出源码中所有div
            For Each elem As HtmlElement In Elems
                Dim NameStr As String = elem.GetAttribute("id") '取出div中所有id
                If ((NameStr IsNot Nothing) And (NameStr.Length <> 0)) Then
                    Dim leftString = Mid(NameStr, 1, 10) '取id前面10位数
                    If leftString.ToLower().Equals("magicdomid") Then
                        Dim ContentStr = WebOC.Document.GetElementById(NameStr).InnerText '读取当前指令
                        If ContentStr <> "" Then
                            MessageBox.Show("当前远端指令为:" + ContentStr)
                        End If
                    End If
                End If
            Next
        End If


下面是以上代码中所需网页元素的查找示意图:

{6BM9]IJL`BZOMNN0)GL9J8.png


本程序中需要的id“magicdomid2每次修改文本内容后,数字后缀都会动态改变,刷新网页又会恢复成“magicdomid2
所以我取出所有的id为“magicdomid的文本内容加以对比,然后筛选出自己需要的文本

我觉得这个代码是万金油,可以抓取不同网站二次加载的数据,

打开你需要抓取数据的网页,按F12查看源码,根据需要按以下规则改写代码,就可以抓取该网页的对应内容了


先通过WebOC.Document.GetElementsByTagName("头文件") 筛选出源码中所有拥有相同头文件(大概是这个名字吧,就是代码前面的紫色文本)的代码

然后使用GetAttribute("id")取出该“id”等号后的内容(此处的“id”可以是所有等号前的橙色文本

如果需要取出该“id”下的文本内容就使用WebOC.Document.GetElementById(NameStr).InnerText(此处的“id”必须是如图中该文本的“id”)


结果
下面贴一下我简陋的界面:


([I}]B{49KXBOBF{AKH2Q.png

其中:
“监控网址”就是你作为远程控制的文档分享链接
“监控时间间隔“是每隔多久检测一次文档内指令
“预设指令就是文档中你设置的用来关机的指令


由于我只需要关机这一个功能,所以暂时只写了关机指令,
如有需要其他功能的,请拿去自行添加



排版略扎眼,请大佬莫怪



程序连接:http://t.cn/AiYqo63J
解压后打开exe文件,输入腾讯文档分享链接即可使用



下面直接上源码,各位大神别嫌弃:http://t.cn/AiYbgxti



如需转载,请注明出处!!!
如有违规,请大佬告知!!!

免费评分

参与人数 11吾爱币 +15 热心值 +10 收起 理由
gxsky + 1 怎样不让程序随系统启动?
fcguo800 + 1 + 1 谢谢@Thanks!
wang1415926 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
pojie44078140 + 1 + 1 用心讨论,共获提升!
O丶ne丨柒夜彡 + 1 + 1 谢谢@Thanks!
Hmily + 6 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
krmz + 1 + 1 谢谢,可以改为其他用途
xiao1193687 + 1 + 1 热心回复!
xiyuboy + 1 + 1 我很赞同!
hayb + 1 热心回复!
茈人极度拉风 + 1 + 1 有成品吗?链接里没有

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

xiyuboy 发表于 2019-8-1 21:33
赞一个,腾讯文档我也抓过,二次加载的源文档 https://docs.qq.com/dop-api/opendoc?normal=1&id=DWG1OZFBwR1JqVllj
换一下后面ID即可,腾讯文档可以用小程序,确实方便,但感觉有道云要稳定一点,所以就没改了

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
yangcongs + 1 + 1 谢谢@Thanks!

查看全部评分

 楼主| yangcongs 发表于 2019-8-5 08:00
panqiuhao 发表于 2019-8-3 18:49
是不是必须把那个分享文档开着才可以?

不用 只要有分享链接就行
你把链接粘贴到监控网址 然后在别的电脑或者手机端可以修改文档内容
修改成和你设置的预设指令完全相同 然后等待时间最长不会超过你设置的监控时间间隔 就会自动关机了
莫丶小白 发表于 2019-8-1 11:52
robo123 发表于 2019-8-1 11:57
一脸懵逼的小白路过
 楼主| yangcongs 发表于 2019-8-1 12:35
本帖最后由 yangcongs 于 2019-8-1 15:15 编辑

@茈人极度拉风 我打了个压缩包,你试下 http://t.cn/AiYqo63J
sdvsvs 发表于 2019-8-1 12:43
不懂,但是支持下
HunterXu 发表于 2019-8-1 12:47
这算不算黑客技术
 楼主| yangcongs 发表于 2019-8-1 13:56
HunterXu 发表于 2019-8-1 12:47
这算不算黑客技术

算不上吧
凌风0203 发表于 2019-8-1 14:59
电脑不关也没事啊,反正寿命期内不会坏
 楼主| yangcongs 发表于 2019-8-1 15:01
凌风0203 发表于 2019-8-1 14:59
电脑不关也没事啊,反正寿命期内不会坏

公司的电脑 下班不关会罚款的
adxing 发表于 2019-8-1 15:35
不懂,但支持一下
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 13:32

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表