怎么样读取ie的历史列表(十万火急) HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\TypedUrls里面有访问过的URLC:\WINNT\Profiles\Administrator\Local Settings里面记录了你访问的所有的URL,时间等 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我的老天,我又要 COPY/PASTE 了!void CTestDlgDlg::ListHistory(){ HRESULT hr; IUrlHistoryStg2 *puhs; IEnumSTATURL *pesu; STATURL su; ULONG celt; _bstr_t bstr; CString str; hr = ::CoCreateInstance(CLSID_CUrlHistory, NULL, CLSCTX_INPROC_SERVER, IID_IUrlHistoryStg, (LPVOID *)&puhs); if(SUCCEEDED(hr)) { hr = puhs->EnumUrls(&pesu); if(SUCCEEDED(hr)) { while(SUCCEEDED(pesu->Next(1, &su, &celt)) && celt > 0) { bstr = su.pwcsUrl; str += bstr; str += _T("\r\n"); if(su.pwcsTitle) bstr = su.pwcsTitle; else bstr = _T("(empty title)"); m_list1.AddString(bstr); //AfxMessageBox(bstr); } puhs->Release(); } puhs->Release(); } m_txtEdit1.SetWindowText(str);} STATURL 结构中有 ftLastVisited 可以得到上次访问时间。不晓得怎样得到访问次数,这些结构和接口在 MSDN 上找不到,上次有个网友问,我自己找头文件找到的。我用的是 MSDN Library - January 2000,我找到了“Persistent URL Cache Functions”的资料。下面是有关的 API 列表:CommitUrlCacheEntryCreateUrlCacheEntryCreateUrlCacheGroupDeleteUrlCacheEntryDeleteUrlCacheGroupFindCloseUrlCacheFindFirstUrlCacheEntryFindFirstUrlCacheEntryExFindFirstUrlCacheGroupFindNextUrlCacheEntryFindNextUrlCacheEntryExFindNextUrlCacheGroupGetUrlCacheEntryInfoGetUrlCacheEntryInfoExGetUrlCacheGroupAttributeReadUrlCacheEntryStreamRetrieveUrlCacheEntryFileRetrieveUrlCacheEntryStreamSetUrlCacheEntryGroupSetUrlCacheEntryInfoSetUrlCacheGroupAttributeUnlockUrlCacheEntryFileUnlockUrlCacheEntryStream我想,你想要的是这个结构:typedef struct _INTERNET_CACHE_ENTRY_INFO { DWORD dwStructSize; LPTSTR lpszSourceUrlName; LPTSTR lpszLocalFileName; DWORD CacheEntryType; DWORD dwUseCount; DWORD dwHitRate; DWORD dwSizeLow; DWORD dwSizeHigh; FILETIME LastModifiedTime; FILETIME ExpireTime; FILETIME LastAccessTime; FILETIME LastSyncTime; LPBYTE lpHeaderInfo; DWORD dwHeaderInfoSize; LPTSTR lpszFileExtension; union (DWORD dwReserved; DWORD dwExemptDelta;)} INTERNET_CACHE_ENTRY_INFO, *LPINTERNET_CACHE_ENTRY_INFO;你自己做试验了:-) 页面的信息我是读出来了,现在主要的问题是怎样把次数算出来,history好象是一种很特殊的结构,msdn没有文档,我是在urlhist.h头文件中找到的,但还是没有解决次数的问题 INTERNET_CACHE_ENTRY_INFO 结构的 dwHitRate 就是访问次数,不过好像不能用我第一个贴子的方法来解决,要用到我第二个贴子中的 API 来做。 不用打印机的命令字,直接用windows API能实现连续打印吗? 关于xp下GINA的问题 TerminateThread!!!! 如何在应用程序中使用DLL中的对话框资源 有关IE页面模拟点击的问题 同样的使用为什么不能在文档视图中调用dll 大家写程序的时候听不听歌,都听哪些歌? 有谁知道http隧道技术或者命名服务器? 如何在C++和javascript间传值? TTS Engine 庆祝一下,我辞职了。在补上立项后,在我的薪资正常后,体面地辞职。 我想重装一下vc6.0,但总在提示odbc出错了,怎么也不能装了。卸了重装也不行,有什么办法?
{
HRESULT hr;
IUrlHistoryStg2 *puhs;
IEnumSTATURL *pesu;
STATURL su;
ULONG celt;
_bstr_t bstr;
CString str; hr = ::CoCreateInstance(CLSID_CUrlHistory, NULL, CLSCTX_INPROC_SERVER, IID_IUrlHistoryStg, (LPVOID *)&puhs);
if(SUCCEEDED(hr))
{
hr = puhs->EnumUrls(&pesu);
if(SUCCEEDED(hr))
{
while(SUCCEEDED(pesu->Next(1, &su, &celt)) && celt > 0)
{
bstr = su.pwcsUrl;
str += bstr;
str += _T("\r\n");
if(su.pwcsTitle)
bstr = su.pwcsTitle;
else
bstr = _T("(empty title)");
m_list1.AddString(bstr);
//AfxMessageBox(bstr);
}
puhs->Release();
}
puhs->Release();
}
m_txtEdit1.SetWindowText(str);
}
我用的是 MSDN Library - January 2000,我找到了“Persistent URL Cache Functions”的资料。下面是有关的 API 列表:CommitUrlCacheEntry
CreateUrlCacheEntry
CreateUrlCacheGroup
DeleteUrlCacheEntry
DeleteUrlCacheGroup
FindCloseUrlCache
FindFirstUrlCacheEntry
FindFirstUrlCacheEntryEx
FindFirstUrlCacheGroup
FindNextUrlCacheEntry
FindNextUrlCacheEntryEx
FindNextUrlCacheGroup
GetUrlCacheEntryInfo
GetUrlCacheEntryInfoEx
GetUrlCacheGroupAttribute
ReadUrlCacheEntryStream
RetrieveUrlCacheEntryFile
RetrieveUrlCacheEntryStream
SetUrlCacheEntryGroup
SetUrlCacheEntryInfo
SetUrlCacheGroupAttribute
UnlockUrlCacheEntryFile
UnlockUrlCacheEntryStream我想,你想要的是这个结构:
typedef struct _INTERNET_CACHE_ENTRY_INFO {
DWORD dwStructSize;
LPTSTR lpszSourceUrlName;
LPTSTR lpszLocalFileName;
DWORD CacheEntryType;
DWORD dwUseCount;
DWORD dwHitRate;
DWORD dwSizeLow;
DWORD dwSizeHigh;
FILETIME LastModifiedTime;
FILETIME ExpireTime;
FILETIME LastAccessTime;
FILETIME LastSyncTime;
LPBYTE lpHeaderInfo;
DWORD dwHeaderInfoSize;
LPTSTR lpszFileExtension;
union (DWORD dwReserved; DWORD dwExemptDelta;)
} INTERNET_CACHE_ENTRY_INFO, *LPINTERNET_CACHE_ENTRY_INFO;你自己做试验了:-)