对于需要拨号连接联网的公司企业和学校,每次开机都需要点一下弹出的连接对话框,才能让电脑联网,有没有什么方法无需用户进行任何操作就能自动联网呢?在远程办公时,办公室偶尔会出现断网的情况,远程软件也无法使用了,这时候有没有什么方法能让电脑断网自动重连呢?
使用系统自带的任务计划功能,开机自动拨号、断网自动重连,都不是问题!(嫌麻烦的请直接跳到第4节,下载桌面自动联网exe小程序,发送快捷方式到桌面,首次输入拨号宽带账号密码后,后续只需双击桌面快捷方式即可联网)!
1.任务计划程序库
选择“我的电脑”→右键打开“管理”→系统工具→任务计划→任务计划程序
点击右侧的创建任务,创建新的任务计划。
弹出如下设置窗口,在常规栏中输入好记的名称,以便后续需要修改的情况,比如:Net connection
2.进行联网操作设置
在操作中新建操作,内容如下图右侧所示,在添加参数中输入:【你拨号的名称(一般是宽带连接有的后面可能带了数字)】+【拨号的账号】+【拨号的密码】,三者之间使用空格隔开。完成后点确定,一个联网任务就生成了,后续只需要设置其触发条件,就能实现计划联网功能。
3.设置触发条件
为日常使用方便,可同时设置开机自动联网和断网自动重连,两个触发条件。这两个条件都是在触发器中进行设置,分别如下:
3.1开机自动联网
在触发器中新建触发条件设置如下,触发条件为登录时,则每次登录时将执行第2节中的联网操作。
3.2断网自动重连
想要同时实现断网自动重连,则需要在触发器栏目中另外新建一个触发器,依次选择如下选项,进行设置:
打开“编辑事件筛选器”,选择XML,允许手动编辑查询
上述框中输入如下代码,点击确认,即完成了断网自动重连的设置。
<QueryList>
<Query Id="0" Path="Application">
<Select Path="Application">*[System[Provider[@Name='RasClient'] and (Level=4 or Level=0)]]</Select>
</Query>
</QueryList>
4. 自动拨号联网程序
通过Python生成的自动联网程序(下载地址),下载后可以放在你熟悉的位置,以免被误删。
首次使用时有两种形式:
1.在程序所在的目录下手动创建含有账号密码的txt文件,然后运行程序,即可联网成功。
txt文件名为: 联网账号.txt
内容为:
账号:xxxx
密码:xxxx
2.执行程序,在弹出的cmd命令窗中按照提示分别输入正确的账号和密码
首次登陆成功后,只要没有更改过txt文件,双击Net.exe即可联网,为了便于使用,最好是右键创建exe文件的快捷方式到桌面。
若报错请检查txt文件中的账号密码是否正确,txt文件是否正确,更改为正确的形式即可。
相应的Python代码如下,仅供交流,直接使用请点击:
链接:https://pan.baidu.com/s/1Gyf_zG7fw2QqK7VMaSQEIQ
提取码:wz2v
# 开发作者 :TXH
# 开发时间 :2020-08-30 13:10
# 文件名称 :Net.py
# 开发工具 :Python 3.7 + Pycharm IDE
import os,pickle
'''
宽带连接程序
method = 1 使用txt明文储存账号密码,否则默认采用二进制储存账号密码,文件无法直接打开。
'''
method =0
# 尝试打开本地账号密码储存文件,若不能打开则需要手动输入账号密码
try:
if method==1:
print('读取本地账号密码')
with open('联网账号.txt','r') as f:
string= f.readlines()
name = string[0][3:-1] # 读取行时,换行符自动读在每一行的尾部
keys = string[1][3:]
else:
print('读取本地二进制账号密码')
with open('联网账号.pkl', 'rb') as inf:
name_keys = pickle.load(inf)
name = name_keys['name']
keys = name_keys['keys']
except:
print('本地无宽带账号密码储存文件\n')
name = str(input('首次登陆请输入宽带账号:'))
keys = str(input('请输入宽带密码:'))
# 在终端中运行联网代码
commond = 'rasdial 宽带连接'+' '+name+' '+keys
# 检查联网状态
res = os.system(commond)
if res==0:
print('联网成功!')
if method==1:
with open('联网账号.txt', 'w') as f: # 设置文件对象
f.writelines('账号:' + name + '\n')
f.writelines('密码:' + keys)
else:
with open('联网账号.pkl', 'wb') as outf:
name_keys = {'name':name,'keys':keys}
pickle.dump(name_keys, outf)
else:
print('联网失败,请检查配置!')
# 查看 IP地址
# os.system('ipconfig /all')