如何以编程方式清理Internet Explorer饼干?

时间:2009-02-04 17:57:47

标签: internet-explorer cookies

如何以编程方式清理Internet Explorer?

是否有一些Windows API函数可以执行此操作?

2 个答案:

答案 0 :(得分:5)

实际上,我明白了!

在Windows API中,您可以创建名为InternetSetCookie的Cookie的功能,您可以像这样使用它:

InternetSetCookie("http://teste.com", NULL, "name = value; expires = Sat,01-Jan-2020 00:00:00 GMT");

但是,如果你想删除cookie而不是创建它,你只需要在过去的某个地方设置过期字段,如下所示:

InternetSetCookie("http://teste.com", NULL, "name = value; expires = Sat,01-Jan-2000 00:00:00 GMT");

有关Managing Cookies的更多信息。

答案 1 :(得分:3)

您是否只能在C:\Documents and Settings\user\Local Settings\Temporary Internet Files中搜索文件名中包含'cookie'的文件?

这是获取文件夹的Win32调用:

BOOL SHGetSpecialFolderPath(
  HWND hwndOwner,
  LPTSTR lpszPath,
  int nFolder,
  BOOL fCreate 
);

CSIDL_COOKIES作为nFolder参数传递。

检查此链接A Cleanup API for Windows

您可以通过FindFirstUrlCacheEntryFindNextUrlCacheEntryDeleteUrlCacheEntry功能删除缓存的Cookie。您可以将'cookie:'作为第一个参数(LPCTSTR lpszUrlSearchPattern)传递给FindFirstUrlCacheEntry