我正在使用Process.Start()
方法从我的.NET代码启动一个控制台应用程序的新实例。我想知道是否可以指定托管生成进程的控制台窗口的标题。在ProcessStartInfo
找不到合适的内容。
作为最后的手段,我可以P / Invoke直接与Win32 API对话,但我不愿意。
有什么想法吗?
感谢。
答案 0 :(得分:3)
在例如我使用的PowerShell脚本:
# Set the Window Title as a reference
[System.Console]::Title = "Main title of the window"
从这里得到它,也许有用: http://blogs.msdn.com/b/rob/archive/2012/08/21/setting-the-title-of-the-command-prompt-window.aspx
答案 1 :(得分:2)
我能想到的最简单的方法是创建一个设置标题的批处理文件(使用title命令),然后执行应用程序。然后改为启动.bat文件。
答案 2 :(得分:2)
我知道听起来你知道P / Invoke这样做的方式,但对于其他任何人来说这就是你做的事情
[DllImport("User32.dll")]
public static extern bool SetWindowText(IntPtr hwnd, string title);
SetWindowText(myProcess.MainWindowHandle, "my new title");