2012-01-02 114 views
1

有什么方法可以使用C#或VB.net桌面应用程序清除浏览器历史记录。我如何从Windows桌面应用程序清除浏览历史记录..?

浏览器名称,开始时间和使用时间和所有我得到它,但我无法删除特定的浏览器history.Is有可能..?或任何想法和建议。

这是我的代码:

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 ....

+0

为什么要删除用户数据而不问他?或者不了解他的知识?一般来说为什么要更改其他程序数据?在这里你有asp.net标记? – Aristos 2012-01-02 14:20:19

回答

1

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

+0

@ Carlito ..谢谢它是非常有用的.... – RajeshKdev 2012-01-02 14:28:20

1

当然是的,它是可能的(如CCleaner的可以为你做的),但浏览器将其历史记录存储在自己的文件中,而不是存储在Windows注册表中。

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

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

+0

雅我使用的Windows注册表,以获得所有的浏览器EXE名称是这样的。在这里我问我如何删除该特定的数据库或一些where.Will浏览器历史记录我张贴一些示例源..? – RajeshKdev 2012-01-02 14:23:02

+0

@ Morawski..Thanks您的兴趣您的答案也对我有用... – RajeshKdev 2012-01-02 14:31:06