MainWindowTitle Property

Process.MainWindowTitle Property

 

Gets the caption of the main window of the process.

Namespace:   System.Diagnostics
Assembly:  System (in System.dll)

public string MainWindowTitle { get; }

Property Value

Type: System.String

The main window title of the process.

Exception Condition
InvalidOperationException

The MainWindowTitle property is not defined because the process has exited.

NotSupportedException

You are trying to access the MainWindowTitle property for a process that is running on a remote computer. This property is available only for processes that are running on the local computer.

PlatformNotSupportedException

The platform is Windows 98 or Windows Millennium Edition (Windows Me); set ProcessStartInfo.UseShellExecute to false to access this property on Windows 98 and Windows Me.

A process has a main window associated with it only if the process has a graphical interface. If the associated process does not have a main window (so that MainWindowHandle is zero), MainWindowTitle is an empty string (""). If you have just started a process and want to use its main window title, consider using the WaitForInputIdle method to allow the process to finish starting, ensuring that the main window handle has been created. Otherwise, the system throws an exception.

System_CAPS_noteNote

The main window is the window that currently has the focus; note that this might not be the primary window for the process. You must use the Refresh method to refresh the Process object to get the current main window handle if it has changed.

Win98WinMe

This property is not available on this platform if you started the process with ProcessStartInfo.UseShellExecute set to true.

The following example starts an instance of Notepad and retrieves the caption of the main window of the process.

using System;
using System.Diagnostics;

class MainWindowTitleClass
{
   public static void Main()
   {
      try
      {

         // Create an instance of process component.
         Process myProcess = new Process();
         // Create an instance of 'myProcessStartInfo'.
         ProcessStartInfo myProcessStartInfo = new ProcessStartInfo();
         myProcessStartInfo.FileName = "notepad";
         myProcess.StartInfo = myProcessStartInfo;
         // Start process.
         myProcess.Start();
         // Allow the process to finish starting.
         myProcess.WaitForInputIdle();
         Console.Write("Main window Title : " + myProcess.MainWindowTitle);

         myProcess.CloseMainWindow();
         myProcess.Close();
      }
      catch(Exception e)
      {
         Console.Write(" Message : " + e.Message);
      }

   }
}

LinkDemand

for full trust for the immediate caller. This member cannot be used by partially trusted code.

.NET Framework
Available since 1.1
Return to top
Show:
© 2016 Microsoft