.net - 如何以编程方式为拨号连接设置 'automatic configuration script'?

标签 .net internet-explorer

我在“Internet 选项”->“连接”中有一个拨号连接,我想以编程方式为其设置“自动配置脚本”(连接设置之一)。为 LAN 设置它很容易,但我找不到有关为其他连接设置它的任何信息。

最佳答案

好的,所以我设法解决了它。实际上,它以存储 LAN 设置的相同方式存储在注册表中。局域网解决方案来自here但我会粘贴它以防有一天它消失。

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections 注册表项具有“Internet 选项”中定义的所有连接以及 LAN 设置的值(DefaultConnectionSettings 用于 LAN)。这些值是字节数组,这里是每个字节的描述:
1) 字节号零总是有 3C 或 46 - 我找不到关于这个字节的更多信息。接下来的三个字节是零。
2) 字节数 4 是“Internet 选项”属性表(Internet Explorer->工具->Internet 选项...)使用的计数器。
当您手动更改 Internet 设置(例如“连接”选项卡中的 LAN 设置)时,此计数器会递增。它不是很有用的字节。但它必须有一个值。我始终将其保持为零。接下来的三个字节为零(字节 5到 7)。
3) 根据您的设置,字节数 8 可以采用不同的值。
该值是:
09 仅启用“自动检测设置”时
03 仅启用“为 LAN 使用代理服务器”时
0B 当两者都启用时
05 仅启用“使用自动配置脚本”时
启用“自动检测设置”和“使用自动配置脚本”时为 0D
07 启用“为 LAN 使用代理服务器”和“使用自动配置脚本”时
0F 当所有三个都启用时。
01 当它们都未启用时。
接下来的三个字节是零(字节 9 到 B)。
4) 字节数C(十进制12)包含代理服务器地址的长度。例如代理服务器'127.0.0.1:80'的长度为12(长度包括点和冒号)。接下来的三个字节为零(Bytes D 到 F)。
5) 字节 10(或十进制 16)包含代理服务器地址 - 如“127.0.0.1:80”(其中 80 显然是端口号)
6) 地址之后的字节立即包含附加信息的长度。接下来的三个字节为零。
例如,如果勾选了“绕过本地地址的代理服务器”,则此字节为 07,接下来的三个字节为零,然后是一个字符串,即 ''(表示您正在绕过代理服务器。现在因为有 7 个字符,长度是07!)。
你必须自己试验才能找到更多关于这方面的信息。
如果您没有任何附加信息,则长度为 0,并且不会添加任何信息。
7) 附加信息后紧接的字节,是自动配置脚本地址的长度(如果没有脚本地址,则无需添加任何内容,跳过此步骤转到第8步)。接下来的三个字节为零,则地址来了。
8) 最后,附加了 32 个零。(我不知道为什么!)

关于.net - 如何以编程方式为拨号连接设置 'automatic configuration script'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1564627/

相关文章:

C# 导入 Adob​​e Illustrator (.AI) 文件渲染到位图?

Javascript 在 IE8 comp 模式下工作但不是标准模式

java - 如何使用 Selenium WebDriver 和 Java 选择单选按钮?

c# - ApplicationSignInManager 类抛出无效的转换异常

.net - web.config 授权拒绝未经授权

c# - 4个接口(interface)的接口(interface)?

c# - WPF - 如何从按钮处理程序确定列表框中当前项目的索引

visual-studio - 运行 Web Developer Express 时如何清除 IE 缓存?

internet-explorer - Internet Explorer 中的 Go 和 gorilla session

internet-explorer - 帮助解决空白 : nowrap and normal in IE