这篇文章主要介绍了C++获取多浏览器上网历史记录示例代码,支持获取IE, Chrome,FireFox等浏览器
// ————————————————————————————————————————
// Remarks:
// BrowsHistory对象应该设置成全局,或者静态;防止还没有获取完网址,对象就析构了;
// ————————————————————————————————————————
#pragma once
#include
#include
#include
#include
struct BrowsData
{
public:
// 网址
CString strURL;
// 对应网址访问次数
unsigned int nCount;
// 重载<操作符
bool operator <(const BrowsData &m)const
{
return nCount > m.nCount;
}
};
class BrowsHistory
{
private:
// 保存获得的网址和访问次数
std::vector m_BrowsHistroy;
private:
// IE网址过滤,如只取网址com前边的
void urlFiltrateIE (LPWSTR lpszSourceUrlName);
// Chrome网址过滤,如只取网址com前边的
void urlFiltrateChrome (CString strUrlName);
// Firefox网址过滤,如只去网址com前边的
void urlFiltrateFirefox (CString strUrlName, int nCount);
// 查询进程是否已存在, 返回true表示存在;自动结束其进程
bool IsRunning(CString exe);
// 编码转换
void ConvertUtf8ToGBK(CStringA &strUtf8);
// 获取浏览器历史记录
void InitHistroy (void)来源gao@!dai!ma.com搞$$代^@码网;
// 多线程函数
static void ThreadPro (LPVOID * ptr);
// 对获得的网址进行排序
void Sort (void);
public:
BrowsHistory();
~BrowsHistory();
// 获取网址的进程,是否执行完;执行完时为true;
bool m_bStatus;
// 初始化
void Init (void);
// 获取浏览器历史记录
std::vector GetBrowsHistory(void) const;
};
以上就是C++获取多浏览器上网历史记录示例代码(支持获取IE/Chrome/FireFox)的详细内容,更多请关注gaodaima搞代码网其它相关文章!