建立无线链接后,我有一个wifi连接,需要使用Web表单进行身份验证。我知道如何使用curl
/ curlIE脚本自动进行身份验证。
但是,每次连接到特定的网络连接时,如何要求Windows调用脚本?
我也想在脚本的命令行上接收无线配置文件的名称或ESSID。
建立无线链接后,我有一个wifi连接,需要使用Web表单进行身份验证。我知道如何使用curl
/ curlIE脚本自动进行身份验证。
但是,每次连接到特定的网络连接时,如何要求Windows调用脚本?
我也想在脚本的命令行上接收无线配置文件的名称或ESSID。
Answers:
在Windows Vista和更高版本中,可以使用带有事件日志触发器的计划任务来执行此操作。第一个事件将通过连接到网络来触发,并且您将指定要运行它必须连接到的网络。与任何网络断开连接时,将触发第二个事件。每个事件将运行您指定的特定任务。可能是您提到的脚本编写的。
Task Scheduler
在开始菜单搜索框中输入或在下找到它Programs | Accessories | System Tools
。在“任务计划程序”库中,通过单击Create Task
右侧的“动作”面板来创建一个新任务。
为任务命名,例如“检测网络连接”或您选择的任何名称
在Triggers
选项卡上,单击,然后从下拉框中New...
选择On an Event
。
选择以下设置:
Microsoft-Windows-NetworkProfile/Operational
NetworkProfile
10000
Conditions
选项卡。Start only if the following network connection is available
然后选择要用于运行脚本的网络Actions
标签下,点击,然后New...
选择Start a program
。输入要运行的脚本文件的位置,然后单击确定OK
。OK
。Microsoft-Windows-NetworkProfile/Operational
NetworkProfile
10001
Microsoft-Windows-NetworkProfile
(W10 1709)
Start only if the following network connection is available
Windows 10周年更新之后,似乎已损坏。请改用以下自定义触发器:
<QueryList>
<Query Id="0" Path="System">
<Select Path="Microsoft-Windows-NetworkProfile/Operational">
*[System[(EventID=10000)]] and *[EventData[(Data[@Name="Name"]="YOUR-SSID-HERE")]]
</Select>
</Query>
</QueryList>
在公司网络中,请使用域名而不是SSID。在这种情况下,事件的类别将是“域已认证”,而不是“私有”。
Start only if the following network connection is available
似乎确实坏了。如果设置该选项并按需运行任务,则会出现此错误:Task Scheduler Service is not available. Task scheduler will attempt to reconnect to it
。
如果您碰巧正在使用Thinkpad,则可以利用适用于Windows 7,Vista和XP的ThinkVantage Access Connection。
ThinkVantage Access Connection是ThinkPad随附的网络连接管理器软件-如果没有,可从其支持站点下载。当您为位置创建新的配置文件时,会出现一个向导,询问您是否要配置连接该位置时要启动的程序列表。它也提供了在网络中断时杀死程序的功能。
请注意,可以将软件配置为完全不使用任何位置配置文件,而这可能是初始状态-在这种情况下,无法配置要在连接wifi时启动的程序列表:您必须创建一个连接配置文件以包含列表。
以我自己的经验,我尝试避免使用该软件-与没有连接相比,连接需要更多时间,并且有时在引导时无法建立新连接(可以通过手动重新连接来解决)。
该软件只能与ThinkPad随附的WIFI驱动程序一起使用。
附带一提,此软件可在用户登录之前建立连接,这是您创建配置文件时的一种选择。我不知道如果没有它是否可能。