c# – 以编程方式设置代理地址,端口,用户名,密码

前端之家收集整理的这篇文章主要介绍了c# – 以编程方式设置代理地址,端口,用户名,密码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
嗨,我需要以编程方式设置IE的代理地址

早些时候我曾经使用过这个RedTomahawk.TORActivator
但它没有提供设置需要用户名和密码的代理的选项.

我们如何设置需要用户名和密码的代理

请提供类似的示例

void Setproxy(string ip,string port,string uname,string pwd)
{
///代码在这里
}

解决方法

你可以P / Invoke WinHttpSetDefaultProxyConfiguration功能.

更新:

包括要求的示例:

[StructLayout(LayoutKind.Sequential,CharSet = CharSet.Unicode)]
public struct WINHTTP_PROXY_INFO
{
    public AccessType AccessType;
    public string Proxy;
    public string Bypass;
}

public enum AccessType
{
    DefaultProxy = 0,NamedProxy = 3,NoProxy = 1
}

class Program
{
    [DllImport("winhttp.dll",CharSet = CharSet.Unicode,SetLastError = true)]
    public static extern bool WinHttpSetDefaultProxyConfiguration(ref WINHTTP_PROXY_INFO config);

    static void Main()
    {
        var config = new WINHTTP_PROXY_INFO();
        config.AccessType = AccessType.NamedProxy;
        config.Proxy = "http://proxy.yourcompany.com:8080";
        config.Bypass = "intranet.com";

        var result = WinHttpSetDefaultProxyConfiguration(ref config);
        if (!result)
        {
            throw new Win32Exception(Marshal.GetLastWin32Error());
        }
        else
        {
            Console.WriteLine("Successfully modified proxy settings");
        }
    }
}

猜你在找的C#相关文章