HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\TypedUrls
里面有访问过的URLC:\WINNT\Profiles\Administrator\Local Settings里面记录了你访问的所有的URL,时间等

解决方案 »

  1.   

    我的老天,我又要 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);
    }
      

  2.   

    STATURL 结构中有 ftLastVisited 可以得到上次访问时间。不晓得怎样得到访问次数,这些结构和接口在 MSDN 上找不到,上次有个网友问,我自己找头文件找到的。
    我用的是 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;你自己做试验了:-)
      

  3.   

    页面的信息我是读出来了,现在主要的问题是怎样把次数算出来,history好象是一种很特殊的结构,msdn没有文档,我是在urlhist.h头文件中找到的,但还是没有解决次数的问题
      

  4.   

    INTERNET_CACHE_ENTRY_INFO 结构的 dwHitRate 就是访问次数,不过好像不能用我第一个贴子的方法来解决,要用到我第二个贴子中的 API 来做。