如何从Windows桌面应用程序中清除浏览历史记录..?

时间:2012-01-02 14:12:02

标签: c# asp.net .net vb.net

有没有办法使用C#或VB.net桌面应用程序清除浏览器历史记录。

浏览器名称,开始时间和使用时间以及所有我得到它。但我无法删除该特定浏览器历史记录。是否可能..?或任何想法和建议。

这是我的代码:

 Process[] processlist = Process.GetProcesses();
                RegistryKey browserKeys;
                browserKeys = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\WOW6432Node\Clients\StartMenuInternet");
                if (browserKeys == null)
                    browserKeys = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Clients\StartMenuInternet");
                string[] browserNames = browserKeys.GetSubKeyNames();
                foreach (Process theprocess in processlist)
                {
                    foreach (string Bkeys in browserNames)
                    {
                        string BrowseKeys = Bkeys.ToLower().Replace(".exe", "").ToString();
                        if (theprocess.ProcessName.ToLower().ToString() == BrowseKeys.ToLower().ToString())
                        {
                            table1.Rows.Add(theprocess.ProcessName.ToUpper().ToString(), theprocess.StartTime.ToString(), theprocess.UserProcessorTime.ToString(), theprocess.TotalProcessorTime.ToString(), DateTime.Now);
                        }
                    }
                }

先谢谢,

R1 ......

2 个答案:

答案 0 :(得分:1)

是的,当然可以(例如CCleaner可以为您做到这一点),但浏览器会将其历史记录存储在自己的文件中,而不是Windows注册表中。

例如,Firefox使用SQLite数据库存储历史记录(以及书签等)。我认为Chrome也是如此(或者至少用过它)。

您可以使用http://sourceforge.net/projects/sqlite-dotnet2/库来管理SQLite数据库。

答案 1 :(得分:1)

每个浏览器以不同的方式和不同的位置保存其浏览器历史记录。我几个月前试图完成类似的事情。我使用了this link来描述Internet Explorer和firefox的过程。它可能已经过时但我认为它会让你开始。