源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

C#控制IE进程关闭和缓存清理的实现代码

  • 时间:2020-12-10 00:55 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:C#控制IE进程关闭和缓存清理的实现代码
[u]复制代码[/u] 代码如下:
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");     } }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部