如何以编程方式清理Internet Explorer?
是否有一些Windows API函数可以执行此操作?
答案 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。
您可以通过FindFirstUrlCacheEntry
,FindNextUrlCacheEntry
和DeleteUrlCacheEntry
功能删除缓存的Cookie。您可以将'cookie:'作为第一个参数(LPCTSTR lpszUrlSearchPattern
)传递给FindFirstUrlCacheEntry
。