2011-08-19 68 views
0

我正在尝试创建一个软件(C++与Qt),它会将一些数据搜索到我的网站的Cookie中。以编程方式读取Internet Explorer cookies

我发现一个名为InternetGetCookie(szURL, NULL, lpszData, &dwSize)的WinAPI的功能,但是当我想说明的结果我有这样的事情:

__utma=166311972.1573129762.1302471948.1313050619.1313050781.24; __utmz=166 
311972.1302471948.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); kk_als=ZmNk 
YzE4MGIzYWQwMDI3Mzc0ZTkwMDQ2MWMwMGM5MTUjIzgxLjI0Ny4zNi4xNTcjI05PX1BBUkVOVCMjMTMw 
MjQ3MTk1MiMjLyMjTk9fUkVGRVJFUiMjTk9fT1BUX0lORk8jIzEjIzAjIzAjIzAjIzAjIzEjIzE%3D 

它看起来像的base64,但我找不到我想要的东西。

有人知道如何阅读这个cookie? PS:对不起,我的英语不好。

回答

1

我找到了。

当IE浏览器在保护模式下,你不能看到所有以“InternetGetCookie”

为了解决这个问题有一个其他功能的饼干:

HRESULT IEGetProtectedModeCookie(
    __in  LPCWSTR lpszURL, 
    __in  LPCWSTR lpszCookieName, 
    __inout LPWSTR pszCookieData, 
    __inout DWORD *pcchCookieData, 
    __in  DWORD dwFlags 
); 
0

InternetGetCookie返回一个字符串,其中包含以分号分隔的给定网址的所有Cookie。字符串中的每个cookie的格式为:name = data

+0

OK,其实当IE在保护模式我无法访问所有的cookie。我必须使用这个功能: – user729194

相关问题