C++ 获取Cookie

string GetCookie(const char *szURL)
{
	string strCookie;

	LPSTR lpszData = NULL;
	DWORD dwSize = 0;
	lpszData = new char[1];
	memset(lpszData, 0, 1);

retry:
	if (!InternetGetCookieA(szURL, "", lpszData, &dwSize))
	{
		if (GetLastError() == ERROR_INSUFFICIENT_BUFFER)
		{
			delete[]lpszData;
			lpszData = new char[dwSize + 1];
			memset(lpszData, 0, dwSize + 1);
			goto retry;
		}
	}
	else
	{
		strCookie = string(lpszData);
		delete[]lpszData;
	}

	return strCookie;
}

cookie保存在俩位置:%AppData%\Microsoft\Windows\Cookies,%AppData%\Microsoft\Windows\Cookies\Low。

IE默认是保护模式cookie存放在%AppData%\Microsoft\Windows\Cookies\Low,应用程序中权限正常,获取的Cookie是%AppData%\Microsoft\Windows\Cookies位置的Cookie。

相关链接:http://bbs.csdn.net/topics/360194497

你可能感兴趣的:(C++/MFC,Cookie,C++获取Cookie)