通过注册表获取Internet选项中代理服务器参数

大多数浏览器设置代理服务器都是设置internet选项中的代理服务,如果想获取这个信息可以通过访问注册表获取


int nRet = RegOpenKeyEx(HKEY_CURRENT_USER, L"Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings", 0, KEY_READ, &hOpen);
if (ERROR_SUCCESS == nRet) {
     RegQueryValueEx(hOpen, L"ProxyServer", NULL, NULL, (BYTE*)buf, &size);
}

可以获取的参数感觉比较有用的是:

ProxyEnable:表示是否开启了代理服务器;
ProxyServer:表示代理服务器信息两种格式分别为:
a、ip:port;
b、http=ip:port;https=ip:port;ftp=ip:port;


对于如何获取到设置的代理链接时的用户名和密码,参考了:http://blog.csdn.net/wwwsq/article/details/35991419


    需要包括头文件:#include <WinCred.h>

    DWORD dwCount = 0;
    PCREDENTIAL * pCredArray = NULL;
    if (CredEnumerate(NULL, 0, &dwCount, &pCredArray)) {
       for (DWORD dwIndex = 0; dwIndex < dwCount; dwIndex++) {
          PCREDENTIAL pCredential = pCredArray[dwIndex];
          std::wstring target = pCredential->TargetName;
          if (target == L"ip:port") {
             std::wstring usr = pCredential->UserName; 
             std::wstring pwd = (LPCWSTR)pCredential->CredentialBlob;
          }
       }
       CredFree(pCredArray);
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值