【发布时间】:2013-01-24 17:07:42
【问题描述】:
我正在使用
System.Diagnostics.Process.Start(ProcessInfo);
在我的 Windows 窗体应用程序中在记事本中打开 TEXT 文件。
详细代码sn-p是
ProcessStartInfo PSI = new ProcessStartInfo("notepad.exe", LogFile);
PSI.WindowStyle = ProcessWindowStyle.Normal;
System.Diagnostics.Process p = System.Diagnostics.Process.Start(PSI);
但是,它会在默认桌面上打开记事本,而不是在运行主应用程序的扩展桌面上。
现在的问题是,如何在活动桌面(即当前应用程序正在运行的窗口)上打开记事本?
【问题讨论】:
-
最简单的方法是在 Windows 中更改您的主显示器。否则你将不得不调用一些非常繁重的库。您将不得不使用 FindWindow、SetWindowPos、EnumWIndows。
-
我认为使用“窗口”一词会使这个问题变得混乱,也许“显示”或“监视器”会是更好的选择?
-
你不需要
FindWindow。如果您创建进程,则返回的Process类具有MainWindowHandle属性。 -
@Anon 没关系。
标签: c# .net process.start