现在位置首页 / 项目实战 /正文

C# IE进程关闭及缓存清理代码

作者: IT小兵 | 2014年4月14日| 热度:℃ | 评论: |参与:

C# IE进程关闭及缓存清理代码

 class IEUtil
{
public static void openIE(string url)
{
try
{
//System.Diagnostics.Process.Start(url);
System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.FileName = "iexplore.exe";
p.StartInfo.Arguments = url;
p.Start();
}
catch (Exception ex)
{
Log.logger("openIE" + url+"----------"+ex.Message);
}
}
public static void closeAllIEProcess()
{
string defaultBrowserName = GetDefaultBrowerName();
System.Diagnostics.Process[] procs 
= System.Diagnostics.Process.GetProcessesByName("IEXPLORE");
foreach (System.Diagnostics.Process proc in procs)
{
proc.Kill();
}
}
public static void CleanCookie()
{
try
{
string[] theFiles 
= System.IO.Directory.GetFiles(Environment.GetFolderPath
(Environment.SpecialFolder.Cookies),
 "*", System.IO.SearchOption.AllDirectories);
foreach (string s in theFiles)
	FileDelete(s);
}
catch(Exception e)
{
Log.logger("Delete cookie error" + e.Message);
}
}
static bool FileDelete(string path)
{
//first set the File's ReadOnly to 0
//if EXP, restore its Attributes
System.IO.FileInfo file = new System.IO.FileInfo(path);
System.IO.FileAttributes att = 0;
bool attModified = false;
try
{
//### ATT_GETnSET
att = file.Attributes;
file.Attributes &= (~System.IO.FileAttributes.ReadOnly);
attModified = true;
file.Delete();
}
catch (Exception e)
{
if (attModified)
	file.Attributes = att;
return false;
}
return true;
}
public static string GetDefaultBrowerName()
{
string mainKey = @"http\shell\open\command";
string nameKey = @"http\shell\open\ddeexec\Application";
string strRet = string.Empty;
try
{
RegistryKey regKey = Registry.ClassesRoot.OpenSubKey(nameKey);
strRet = regKey.GetValue("").ToString();
}
catch
{
strRet = "";
}
return strRet;
}
/// <summary>
/// 清除文件夹
/// </summary>
/// <param name="path">文件夹路径</param>
static void FolderClear(string path)
{
System.IO.DirectoryInfo diPath = new System.IO.DirectoryInfo(path);
if (diPath.Exists)
{
foreach (System.IO.FileInfo fiCurrFile in diPath.GetFiles())
{
	FileDelete(fiCurrFile.FullName);
}
foreach (System.IO.DirectoryInfo 
diSubFolder in diPath.GetDirectories())
{
	FolderClear(diSubFolder.FullName); 
	// Call recursively for all subfolders
}
}
}
/// <summary>
/// 执行命令行
/// </summary>
/// <param name="cmd"></param>
static void RunCmd(string cmd)
{
ProcessStartInfo p = new ProcessStartInfo();
p.FileName = "cmd.exe";
p.Arguments = "/c " + cmd;
p.WindowStyle = ProcessWindowStyle.Hidden;  // Use a hidden window
Process.Start(p);
}
/// <summary>
/// 删除临时文件
/// </summary>
public static void CleanTempFiles()
{
FolderClear(Environment.GetFolderPath
(Environment.SpecialFolder.InternetCache));
RunCmd("RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 8");
}
}

转发注明:IT分享 http://www.suchso.com 

点击阅读本文所属分类的更多文章: 项目实战 。和高手一起交流:346717337
友荐云推荐

未注明转发、原文均为本站原创。分享本文请注明 原文链接

给您更多信息和帮助

在这里您可以找到更多:

技术交流群:346717337 Jquery插件交流

投稿:[email protected]

承接:企业网站门户/微网站/微商城/CMS系统/微信公众号运营/业务咨询

echarts教程系列
本月最热文章

微信扫一扫,徜徉悠嘻网,您的休闲乐园

微信公众号:快乐每一天

随机文章
标签

技术交流群:346717337

投稿:[email protected]

专业专注:企业网站门户/微网站/微商城/CMS系统/微信公众号运营/付费问题咨询