【发布时间】:2013-11-03 19:10:14
【问题描述】:
我正在尝试从我的 C# 控制台应用程序运行 VLC,但我不能。我知道还有其他类似的问题(例如 Launching process in C# Without Distracting Console Window 和 C# Run external console application and no ouptut? 和 C#: Run external console program as hidden),我从中得出以下代码:
Process process = new Process();
process.StartInfo.FileName = "C:\\Users\\XXXXX\\Desktop\\VLC\\vlc.exe";
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.UseShellExecute = false;
process.StartInfo.CreateNoWindow = true;
//process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
process.StartInfo.Arguments = " -I dummy";
process.Start();
但是,当我注释和取消注释 WindowStyle 行时,控制台仍然显示。 怎么了?
【问题讨论】:
-
什么是 VLC? VLC 是否有可能实例化它自己的控制台窗口?
-
它是videolan.org。是的,实际上可能是这样。通过 -I dummy 我避免 UI 启动。
-
我安装了 VLC 并从命令行尝试了
-I dummy。它确实启动了第二个窗口。看来您可能需要以编程方式找到该窗口并将其隐藏。 -
嗯... agat 建议使用 FindWindow,但我无法将其隐藏:我想我无法按名称找到它。此外,如果我放弃 -I dummy,则正常的 UI 会启动;如果我寻找名字,没有运气