用代码为windows设置代理

用代码为windows设置代理

windows10的代理是由两个注册表控制,分别是:

  1. CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyEnable
  2. CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyServer

ProxyEnable是二进制类型,0表示关闭代理,1代表开启代理,ProxyServer则是字符串类型,如:127.0.0.1:10000.在代码中为windows开启代理,只需要操作这两个注册表即可

示例:使用golang为windows开启代理,golang操作注册表:golang.org/x/sys/windows/registry

// 设置代理
func SetProxyForWin(server string){
	key, _, _ := registry.CreateKey(registry.CURRENT_USER, `SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings`, registry.ALL_ACCESS)
	defer key.Close()
	err := key.SetBinaryValue("ProxyEnable",IntToBytes(1))
	if err != nil {
		log.Fatal(err)
	}
	err = key.SetStringValue("ProxyServer", server)

	if err != nil {
		log.Fatal(err)
	}
}

func IntToBytes(n int) []byte {
	x := int32(n)
	bytesBuffer := bytes.NewBuffer([]byte{})
	binary.Write(bytesBuffer, binary.BigEndian, x)
	return bytesBuffer.Bytes()
}
  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值