c#创建谷歌浏览器进程过程检测
2020-11-12 15:30 石吴玉 阅读(716) 评论(0) 编辑 收藏 举报代码:
public static void Main(string[] args) { //打开谷歌浏览器的百度搜索页面 Process process = Process.Start("C:\\Users\\Administrator\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exe","http://www.baidu.com"); var id = process.Id; Process p = Process.GetProcessById(id); p.Kill(); //杀死这个进程 //process.Kill(); Console.WriteLine("Hello World!"); Console.ReadKey(); }
1.直接打开谷歌,当前有8个子进程随谷歌启动而启动
2.启动应用程序 ProcessCore
开启一个谷歌进程,此进程打开了百度搜索的窗口
当前谷歌有9位子进程
3.在步骤二中打开的页面搜索:博客园
当前谷歌还是有9个子进程
4.点击步骤3中搜索到的"博客园"
开启了一个新的tab页,谷歌有了10个子进程
5.点击博客园的多个文章,开启了多个tab页面
谷歌依然有10个子进程
关闭其中一个,谷歌依旧有10个子进程,把以上博客园相关的全部关闭,谷歌变成有9个子进程
6.程序执行 process.Kill();
但无法杀死这个进程
程序停止运营,也无法杀死这个进程
分析原因:
(1)在谷歌浏览器非启动状态下执行代码:Process process = Process.Start("C:\\Users\\Administrator\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exe","http://www.baidu.com");
执行结果:唤醒谷歌浏览器并打开了百度页面
程序打印当前启动的进程ID为:31520
打开任务管理器,顺利找到了这个进程
当前谷歌浏览器开启了9个子进程
再次在浏览器中打开其他页面:
博客园从程序启动的这个百度窗口进入,谷歌翻译与abp中文框架由新的tab打开
此时谷歌存在12个子进程
继续执行代码:process.Kill()
此时谷歌浏览器被关闭,杀死了所有谷歌进程
(2)在谷歌浏览器启动状态下执行代码
事先打开谷歌浏览器,当前有9个子进程
启动项目执行代码:Process process = Process.Start("C:\\Users\\Administrator\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exe","http://www.baidu.com");
顺利打开了谷歌浏览器的百度搜索界面,并检测到程序生成的进程ID为:46092
当前谷歌浏览器有10个进程:
打开任务管理器查找这个进程:
在任务管理器中并未找到PID为46092的进程
继续执行代码:process.Kill();
并未能对当前的谷歌进程产生影响。