1. 相關函數:
HINTERNET WINAPI InternetOpen(
LPCTSTR lpszAgent,
DWORD dwAccessType,
LPCTSTR lpszProxy,
LPCTSTR lpszProxyBypass,
DWORD dwFlags);
BOOL WINAPI InternetSetOption(
HINTERNET hInternet,
DWORD dwOption,
LPVOID lpBuffer,
DWORD dwBufferLength);
2. 相關結構
typedef struct {
DWORD dwAccessType;
LPCTSTR lpszProxy;
LPCTSTR lpszProxyBypass;
} INTERNET_PROXY_INFO, *LPINTERNET_PROXY_INFO;
3. 使用代理服務器
(1)請將dwAccessType設置成INTERNET_OPEN_TYPE_PROXY
(2)設置lpszProxy
(a)代理的格式必須爲:[<protocol>=][<scheme>://]<proxy>[:<port>].
(b)其中protocol, scheme://, :port是可選項, 如果忽略這三者, 則它們默認分別爲
HTTP, HTTP://, :80. 即默認爲HTTP代理.
(c)多個代理必須使用" "(空格)隔開
(d)各種常用代理的使用見如下:
HTTP:
HTTP=HTTP://proxyserver:port
FTP:
FTP:FTP://proxyserver:port
GOPHER
GOPHER=HTTP://proxyserver:port
SOCKS=proxyserver:port
其中前三種都可以在msdn中找到, 但第四種我可是找了N多地方纔好不容易找到了. 另外要注意, msdn中明確說明只有安裝了IE才能使用SOCKS代理.