我想在运行时切换进程的可见性,我有一个Windows窗体应用程序,通过一个进程启动另一个控制台应用程序默认隐藏,但我想允许管理员用户通过复选框切换此状态,并显示控制台应用程序(如果他们选择)。切换Process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden在运行时
我有这个,但它不工作:
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
ProcessWindowStyle state = cvarDataServiceProcess.StartInfo.WindowStyle;
if (state == ProcessWindowStyle.Hidden)
cvarDataServiceProcess.StartInfo.WindowStyle = ProcessWindowStyle.Normal;
else if (state == ProcessWindowStyle.Normal)
cvarDataServiceProcess.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
}
否这个过程在Windows应用程序的整个生命周期中一直保持运行,因此一次数周/几个月。当我查看TaskManager时,它绝对存在并且正在运行。 – m3ntat 2010-04-15 18:36:36
你说得对。实际上,控制台或没有控制台,一旦进程开始,它不起作用。我编辑了代码。你必须使用Windows API。 :) – Nayan 2010-04-15 19:06:12
有关ShowWindow的更多信息,请点击这里http://www.pinvoke.net/default.aspx/user32/ShowWindow.html – Nayan 2010-04-15 19:08:05