当前位置:首页 > 我的Web浏览器设计
菜单名称 清空历史记录 清空收藏夹 删除文档历史记录 清除Cookie 清除Internet临时文件 清除密码历史记录
3.5.2. 添加事件处理函数:
ID号 ID_DelHistoryAddress ID_DELETEFAVORITE ID_DelHistory ID_DelCookies ID_DelIntenetTempFile ID_DelHistoryPassword 进入类向导,选择“Message Maps”选项卡。在“Class Name”下拉列表框中选择CMyWeb16View类,然后按照表2.4为上述删除的六个控件添加事件处理函数。
ID号 ID_DelHistory ID_DelCookies ID_DelIntenetTempFile ID_DelHistoryAddress ID_DELETEFAVORITE ID_DelHistoryPassword
3.5.3. 函数实现:
Messages COMMAND COMMAND COMMAND COMMAND COMMAND COMMAND 函数名 OnDelHistory() OnDelCookies() OnDelIntenetTempFile() OnDelHistoryAddress() OnDeletefavorite() OnDelHistoryPassword() (1)实现文档历史记录的清除
void CMyWeb16View::OnDelHistory() //清除文档历史记录 {
TCHAR szPath[MAX_PATH];
if(SHGetSpecialFolderPath(NULL,szPath,CSIDL_RECENT,FALSE))
}
(2)清除Cookie
void CMyWeb16View::OnDelCookies() //清除Cookies {
TCHAR szPath[MAX_PATH];
DeleteUrlCache(Cookie); //删除URL的Cache
{
EmptyDirectory(szPath); }
SHDeleteKey(HKEY_CURRENT_USER,_T(\orer\\\\RecentDocs\
if (SHGetSpecialFolderPath(NULL,szPath,CSIDL_COOKIES,FALSE)) {
21
EmptyDirectory(szPath); }
}
(3) 清除Internet的临时文件
void CMyWeb16View::OnDelIntenetTempFile() //清空Internet临时文件 {
TCHAR szPath[MAX_PATH];
DeleteUrlCache(File); //删除URL的Cache
if (SHGetSpecialFolderPath(NULL,szPath,CSIDL_INTERNET_CACHE,FALSE))
{ //得到临时目录并清空它 EmptyDirectory(szPath); }
} (4)清空历史记录
void CMyWeb16View::OnDelHistoryAddress() {
CMainFrame* pMainFrame = (CMainFrame*)GetActiveWindow(); pMainFrame->OndeleteHistory();;
}
(5)清除密码历史纪录
void CMyWeb16View::OnDelHistoryPassword() { //清除密码历史记录
SHDeleteKey(HKEY_CURRENT_USER,_T(\Explorer\\\\IntelliForms\}
(6)清空收藏夹:
void CHtmlViewView::OnDeletefavorite()
{
SHDeleteKey(HKEY_CURRENT_USER,_T(\Explorer\\\\User Shell Folders\
}
22
3.6.桌面快捷方式设计:
3.6.1. 添加按钮:修改对话框控件(IDR_MAINFRAME),添加按钮“创建快捷方式”与编辑框,编
辑框ID号为:IDC_shortcutname;按钮ID号为:IDC_SHORTCUT,对应函数为:OnShortcut();
3.6.2. 实现代码:
void CMainFrame::OnShortcut() { CString pp; //获得用户在地址栏中输入的URL
m_wndDlgBar.GetDlgItem(IDC_EDIT_ADDRESS)->GetWindowText(pp); CString pp1; //获得用户在地址栏中输入的URL
m_wndDlgBar.GetDlgItem(IDC_shortcutname)->GetWindowText(pp1); IShellLink *MyLink;//IShellLink 接口指针 IPersistFile *ppf; //另一个接口指针
char DesktopLocate[MAX_PATH];//存储快捷方式在桌面保存的位置 //桌面的位置
SHGetSpecialFolderPath(NULL,DesktopLocate,CSIDL_DESKTOP,0); //以下设定快捷方式在桌面保存位置 strcat(DesktopLocate,\ strcat(DesktopLocate,pp1); strcat(DesktopLocate,\ CoInitialize(NULL);//初始化COM
int re=CoCreateInstance(CLSID_ShellLink,NULL,CLSCTX_ALL,
IID_IShellLink,(void **)&MyLink); if(re<0) { AfxMessageBox(\创建COM对象失败!\ return;
}
MyLink->SetPath(pp);
//设置快捷方式实际文件位置
23
MyLink->SetDescription(pp1);//设置快捷方式描述(即名称) re=MyLink->QueryInterface(IID_IPersistFile, (void **)&ppf); if(re<0) { AfxMessageBox(\无法创建快捷方式!\ MyLink->Release(); return;
}
WCHAR wsz[MAX_PATH];
MultiByteToWideChar( CP_ACP,0,DesktopLocate,-1,wsz,MAX_PATH);//转换为unicode
ppf->Save(wsz,true);//在桌面创建快捷方式 ppf->Release(); MyLink->Release();
AfxMessageBox(\快捷方式创建成功!\
}
4、系统运行
4.1 系统使用说明
24
共分享92篇相关文档