C# Pcrocess Start 设置隐藏控制台

一般来说,只要设置ProcessStartInfo.CreateNoWindow = true;  即可。

如果还是显示,则继续设置 ProcessStartInfo.WindowStyle= ProcessWindowStyle.Hidden;

 

下面代码是用 handle.exe 来关闭占用文件的程序代码(注意关闭的文件的文件名称不能有空格),仅供参考

    private void Button_Click(object sender, RoutedEventArgs e)
        {
            string fileName = @"1.docx";//要检查被那个进程占用的文件

            Process tool = new Process();
            tool.StartInfo.WindowStyle= ProcessWindowStyle.Hidden;
            tool.StartInfo.CreateNoWindow = true;
            tool.StartInfo.FileName = "handle.exe";
            tool.StartInfo.Arguments = fileName + " /accepteula";
            tool.StartInfo.UseShellExecute = false;
            tool.StartInfo.RedirectStandardOutput = true;
            tool.Start();
            tool.WaitForExit();
            string outputTool = tool.StandardOutput.ReadToEnd();

            string matchPattern = @"(?<=\s+pid:\s+)\b(\d+)\b(?=\s+)";
            foreach (Match match in Regex.Matches(outputTool, matchPattern))
            {
                Process.GetProcessById(int.Parse(match.Value)).Kill();
            }
        }

 handle.exe 的下载地址 https://docs.microsoft.com/en-us/sysinternals/downloads/handle

 

翻译 朗读 复制 正在查询,请稍候…… 重试 朗读 复制 复制 朗读 复制 via 百度翻译

 

翻译 朗读 复制 正在查询,请稍候…… 重试 朗读 复制 复制 朗读 复制 via 百度翻译

posted on 2021-07-05 14:38  鲁广广  阅读(337)  评论(0编辑  收藏  举报

导航