Получение хистори из Internet Explorer

Источник: ishodniki

Программа позволяет получить все адреса, по которым пользователь ходил в интернете. Основная задача примера, это продемонстрировать одну из возможностей работы с Internet Explorer-ом.

А так выглядит рабочий код,который находится в файле IEHistory.h:

#include <atlbase.h>
#include <comdef.h>
#include <mshtml.h>
#include <UrlHist.h>
#include <afxtempl.h>

BOOL  GetHistory(CStringList & list)
{
  STATURL url;
  CString strUrl;
  ULONG uFetched;
  IUrlHistoryStg2Ptr history;
  IEnumSTATURLPtr enumPtr;

  if(FAILED(CoCreateInstance(CLSID_CUrlHistory,
        NULL,
        CLSCTX_INPROC_SERVER,
        IID_IUrlHistoryStg2,
        ( void**)&history)))
        {
          return false ;
        }

        if(FAILED(history->EnumUrls(&enumPtr)))
    return false;

  while(SUCCEEDED(enumPtr->Next(1,&url,&uFetched)))
  {
    if(uFetched==0)
      break;
    strUrl = url.pwcsUrl;
    list.AddTail(strUrl);
  }
  return true;
}

Страница сайта http://test.interface.ru
Оригинал находится по адресу http://test.interface.ru/home.asp?artId=8247