全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
关于Cookie,微软给我们提供了两个非常好用的API函数,InternetSetCookie(Ex)/InternetGetCookie,用它们来操作客户端内存中的Cookie非常方便,遗憾的是,没有一个能够直接删除客户端内存中Cookie的函数。不过,我们可以通过变通的方法来实现,通过设置Cookie的过期时间。在使用完某个Cookie,确定不再需要后,获取当前系统的时间,再将改时间设置为该Cookie的过期时间,这样这个Cookie的生命就结束了。在这个过程中,我们需要用到的几个API函数为:GetSystemTimeInternetTimeFromSystemTimeInternetSetCookie当然还要参考一下MSDN中的Cookie的设置方法,链接地址为:/en-us/library/aa385326.aspx其中需要注意的几点有:1、 Note that these functions do not require a call to InternetOpen.2、 Cookies that have an expiration date are stored in the local users account under UsersusernameAppDataRoamingMicrosoftWindowsCookies directory, and the UsersusernameAppDataRoamingMicrosoftWindowsCookiesLow directory for applications running under low privileges.(始终没看明白?这两个文件夹也没找到)3、 Cookies that do not have an expiration date are stored in memory and are available only to the process in which they were created.给出的InternetSetCookie的示例代码:BOOL bReturn;/ Create a session cookie.bReturn = InternetSetCookie(TEXT(http:/www.adventure_), NULL, TEXT(TestData = Test);/ Create a persistent cookie.bReturn = InternetSetCookie(TEXT(http:/www.adventure_), NULL, TEXT(TestData = Test; expires = Sat,01-Jan-2000 00:00:00 GMT);注意第二个参数为NULL,把cookie的name也放到第三个参数中了;另外,过期时间的格式为Sat,01-Jan-2000 00:00:00 GMT,使用InternetTimeFromSystemTime得到的时间的格式是:Sat,01 Jan 2000 00:00:00 GMT,“-”号为“ ”(空格),但不影响过期时间设置的效果。实验的源代码如下:#include stdafx.h#include #include #pragma comment(lib,wininet.lib)char szUrlMAX_PATH = ;int _tmain(int argc, _TCHAR* argv)SYSTEMTIME st;char szInternetTimeMAX_PATH = 0;BOOL bSetCookie = FALSE;BOOL bGetCookie = FALSE;char szCookieMAX_PATH = 0;char szCookieOutMAX_PATH = 0;DWORD dwCookieBufSize = MAX_PATH;DWORD dwErr = 0;GetSystemTime(&st);/ 这个地方不是很严谨,如果当前时间是分钟的时候,可能会有问题,不影响实验结果没有严格去验证st.wMinute += 1;BOOL bConvert = InternetTimeFromSystemTimeA(&st,INTERNET_RFC1123_FORMAT,szInternetTime,MAX_PATH);if( !bConvert)dwErr = GetLastError();return dwErr;dwCookieBufSize = MAX_PATH;bGetCookie = InternetGetCookieA(szUrl,NULL,szCookieOut,&dwCookieBufSize);if( !bGetCookie)dwErr = GetLastError();return dwErr;printf(设置前的Cookie值:%srn,szCookieOut);char szCookieDataMAX_PATH = GALX=3vtyTe-MHuU; expires= ;lstrcatA(szCookieData,szInternetTime);bSetCookie = InternetSetCookieA(szUrl,NULL,szCookieData);if( !bSetCookie)dwErr = GetLastError();return dwErr;dwCookieBufSize = MAX_PATH;bGetCookie = InternetGetCookieA(szUrl,NULL,szCookieOut,&dwCookieBufSize);if( !bGetCookie)dwErr = GetLastError();return dwErr;printf(设置后的Cookie值:%srn,szCookieOut);Sleep( 2 * 60 * 1000);/ 睡眠两分钟,保证大于一分钟的存活期dwCookieBufSize = MAX_PATH;bGetCookie = InternetGetCookieA(szUrl,NULL,szCookieOut,&dwCookieBufSize);i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026江苏南通川润人力资源有限公司招聘2人模拟试卷含答案详解(黄金题型)
- 2026四川长虹电子控股集团有限公司招聘合同主管岗位的1人模拟试卷附答案详解(综合题)
- 2026广东深圳市优才人力资源有限公司招聘聘员1人(派遣至龙岗区科技创新局)备考题库及答案详解(基础+提升)
- 2026济南南美水务有限公司补充招聘2人模拟试卷附参考答案详解【培优B卷】
- 2026江苏南京艺术学院附属中等艺术学校招聘校聘专任教师1人(第二批)模拟试卷附答案详解(达标题)
- 2026上海青浦区练塘镇招聘40人模拟试卷及答案详解【名师系列】
- 2026四川攀枝花学院直接考核招聘博士专职辅导员7人笔试题库【综合卷】附答案详解
- 2026广东广州医科大学附属第五医院人才招聘3人(十四)备考题库及参考答案详解(夺分金卷)
- 2026年哈尔滨市第七十中学校招聘临聘教师3人模拟试卷附答案详解(综合卷)
- 2026北京大学先进制造与机器人学院招聘2名劳动合同制工作人员模拟试卷附答案详解(预热题)
- 2026年全球干细胞行业发展蓝皮书
- 2026交管12123学法减分题库200题(含答案完整版)
- 华中科技大学启明学院入学选拔考试真题
- 2026年高考英语真题全国一卷附答案
- TCPCIF 0239-2023 石油和化工企业开车前安全审查导则
- JJF(皖) 223-2025 测量用电力电压互感器在线监测技术规范
- 旋挖钻机操作保养手册(已定稿)最后修改
- 生猪屠宰兽医卫生检疫人员考试题库答案
- 自助餐厅促销活动方案策划书
- (必会)《社会工作综合能力(初级)》近年考试真题题库(300题)
- 高端案场物业服务方案
评论
0/150
提交评论