【问题标题】:Windows desktop widget to turn proxy on and off用于打开和关闭代理的 Windows 桌面小部件
【发布时间】:2014-12-29 18:16:18
【问题描述】:

我想制作一个简单的 Windows 桌面小部件来打开和关闭互联网代理。

更简单的方法是什么?

【问题讨论】:

标签: windows proxy widget


【解决方案1】:

您可以使用 Visual Basic 脚本和批处理创建一个简单的“小部件”。

例子:

proxy_off.bat

echo off
cls
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f
change_shortcut_on
exit

proxy_on.bat

echo off
cls
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 1 /f
change_shortcut_off
exit

change_shortcut_off.vbs

Set sh = CreateObject("WScript.Shell")
Set shortcut = sh.CreateShortcut("C:\Users\%USERNAME%\Desktop\Proxy.lnk")
shortcut.TargetPath = "C:\Users\%USERNAME%\Proxy Settings\proxy_off.bat"
shortcut.IconLocation = "C:\Users\%USERNAME%\Proxy Settings\Icons\on.ico"
shortcut.Save

change_shortcut_on.vbs

Set sh = CreateObject("WScript.Shell")
Set shortcut = sh.CreateShortcut("C:\Users\%USERNAME%\Desktop\Proxy.lnk")
shortcut.TargetPath = "C:\Users\%USERNAME%\Proxy Settings\proxy_on.bat"
shortcut.IconLocation = "C:\Users\%USERNAME%\Proxy Settings\Icons\off.ico"
shortcut.Save

说明:

  • 在“C:\Users\%USERNAME%\”中创建文件夹“Proxy Settings”;
  • 在“C:\Users\%USERNAME%\Proxy Settings\”中创建文件夹“Icons”;
  • 在“C:\Users\%USERNAME%\Proxy Settings\Icons”中插入“on.ico”(代理“On”的任何图标)和“off.ico”(代理“Off”的任何图标) ;
  • 在“C:\Users\%USERNAME%\Proxy Settings\”中创建上述文件(proxy_off.bat、proxy_on.bat、change_shortcut_off.vbs、change_shortcut_on.vbs);
  • 在您的桌面中创建“C:\Users\%USERNAME%\Proxy Settings\proxy_off.bat”的快捷方式 (Proxy.lnk);

完成!非常简单有效。 现在您可以单击“Proxy.lnk”(桌面中的快捷方式)来“打开”和“关闭”代理。

代理开启        代理关闭

 

图标上的网址:http://s30.postimg.org/sgoerz0od/image.png
关闭图标网址:http://s13.postimg.org/9zha38zkj/off.png

【讨论】:

  • 另外,请确保您的 .bat 未设置为默认使用记事本打开。 stackoverflow.com/questions/4905708/…。我还设置了shortcut.WorkingDirectory="C:\Users\%USERNAME%\Proxy Settings" 来运行vbs程序并为环境变量user=sh.ExpandEnvironmentStrings("%USERNAME%")设置一个变量以在路径名中使用
  • 重要提示:%USERNAME% 不能用于路径名。我收到以下错误(图片:i.stack.imgur.com/EbA5P.png)。取而代之的是,输入实际的文件夹名称,例如:gabriel。确保替换出现的%USERNAME% everywhere。例如:C:\Users\%USERNAME%\Proxy Settings\proxy_off.bat --> C:\Users\gabriel\Proxy Settings\proxy_off.bat 我。
  • 我也无法显示图标。它只是一个白色的正方形。我什至尝试使用icoconvert.com 将上面的 png 图像转换为 .ico 文件
  • @Lucas NN,我更进一步。另外,我在实施您的答案时遇到了几个错误,并在此处解决了这些错误。在这里查看我的答案:stackoverflow.com/a/44752679/4561887。我让它创建一个桌面快捷方式并根据代理状态修改图标,只使用一个 .vbs 文件而不使用批处理文件,并且每次单击时都会弹出一个 1 秒的定时弹出窗口来宣布新状态桌面快捷方式。谢谢你的工作。你是等式的一半。
【解决方案2】:

在 Windows 10 中,执行脚本后需要打开代理设置窗口才能使更改生效。 所以添加以下几行:

proxy_off.bat

echo off
cls
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f
change_shortcut_on
start /min ms-settings:network-proxy
taskkill /IM SystemSettings.exe /f
exit

proxy_on.bat

echo off
cls
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 1 /f
change_shortcut_off
start /min ms-settings:network-proxy
taskkill /IM SystemSettings.exe /f
exit

ATM 设置窗口不会最小化。

【讨论】:

    【解决方案3】:

    虽然这个解决方案不会自行切换设置,但它可能是快速找到正确位置的捷径。

    在 Windows 10 中,您可以在桌面上添加快捷方式,并在位置字段中输入:

    ms-settings:network-proxy
    

    这会将您定向到切换代理按钮。然后你只需要点击保存。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-22
      • 1970-01-01
      • 2019-01-19
      • 1970-01-01
      • 2011-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多