首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

怎么使用com组建,得到下网历史记录

2012-12-31 
如何使用com组建,得到上网历史记录?我在网上找了一段代码,可是引用shlobj.h和atlbase.h编译时报错,初学者,

如何使用com组建,得到上网历史记录?
我在网上找了一段代码,可是引用shlobj.h和atlbase.h编译时报错,初学者,不知道如何使用,请各位大哥指导一下
#include <stdio.h>
#include <windows.h>
#include <UrlHist.h>  // IUrlHistoryStg2 
#include <shlobj.h>   // CLSID_CUrlHistory, SHAddToRecentDocs
#include <atlbase.h>  // USES_CONVERSION;

void GetIEHistory()
......{
    USES_CONVERSION;//Unicode转Ansi用
    CoInitialize(NULL); //初始化

    IUrlHistoryStg2* pUrlHistoryStg2 = NULL;
    HRESULT hr = CoCreateInstance(CLSID_CUrlHistory,
        NULL, CLSCTX_INPROC, IID_IUrlHistoryStg2,
        (void**)&pUrlHistoryStg2);

    /**//**//**//*if (SUCCEEDED(hr))
    {
        hr = pUrlHistoryStg2->ClearHistory();
        pUrlHistoryStg2->Release();
    }*/

    IEnumSTATURL* pEnumURL;
    hr = pUrlHistoryStg2->EnumUrls(&pEnumURL);

    STATURL suURL;
    ULONG pceltFetched;
    suURL.cbSize = sizeof(suURL);
    hr = pEnumURL->Reset();

    while((hr = pEnumURL->Next(1, &suURL, &pceltFetched)) == S_OK)
    ......{
        //hr = pUrlHistoryStg2->DeleteUrl(suURL.pwcsUrl, 0);
        printf("%s ", W2T(suURL.pwcsUrl));
    }

    pEnumURL->Release();
    pUrlHistoryStg2->Release();
    CoUninitialize();
}
[解决办法]
工程选项中,incluse path中添加一个:$(BCB)\include\atl

热点排行