有时候我们可能需要在自己的程序中清除本机IE浏览器保存的一些特殊内容,由于其“特殊性”,所以用一般的方法可能并不理想。下面这个方法可以真正完成这一操作,经测试,唯一发现的问题是一些杀毒软件可能会报错,但任务仍可顺利完成(如卡巴斯基)。
#region ClearSpecialContentOfIE ////// 清除IE浏览器保存的特殊内容。 /// /// 1:历史记录,2:Cookies,8:Internet临时文件,16:表单数据,32:密码,255:全部删除,4351:全部删除(含设置) public static void ClearSpecialContentOfIE(int flag) { string cmd = string.Format("RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess {0}", flag.ToString()); System.Diagnostics.Process p = new System.Diagnostics.Process(); p.StartInfo.FileName = "cmd.exe"; p.StartInfo.UseShellExecute = false; //关闭Shell的使用 p.StartInfo.RedirectStandardInput = true; //重定向标准输入 p.StartInfo.RedirectStandardOutput = true; //重定向标准输出 p.StartInfo.RedirectStandardError = true; //重定向错误输出 p.StartInfo.CreateNoWindow = true; p.Start(); p.StandardInput.WriteLine(cmd); p.StandardInput.WriteLine("exit"); } #endregion
另外,以上命令不适用IE6浏览器。