Process.MainWindowTitle Свойство

Определение

Получает заголовок главного окна процесса.

public:
 property System::String ^ MainWindowTitle { System::String ^ get(); };
public string MainWindowTitle { get; }
member this.MainWindowTitle : string
Public ReadOnly Property MainWindowTitle As String

Значение свойства

Заголовок главного окна процесса.

Исключения

MainWindowTitle Свойство не определено, так как процесс завершился.

Вы пытаетесь получить доступ к свойству MainWindowTitle для процесса, работающего на удаленном компьютере. Это свойство доступно только для процессов, выполняемых на локальном компьютере.

Примеры

В следующем примере запускается экземпляр Блокнота и извлекается заголовок главного окна процесса.

using System;
using System.Diagnostics;

class MainWindowTitleClass
{
    public static void Main()
    {
        try
        {
            // Create an instance of process component.
            using (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();
            }
        }
        catch (Exception e)
        {
            Console.Write($" Message : {e.Message}");
        }
    }
}
open System.Diagnostics

try
    // Create an instance of process component.
    use myProcess = new Process()
    // Create an instance of 'myProcessStartInfo'.
    let myProcessStartInfo = ProcessStartInfo()
    myProcessStartInfo.FileName <- "notepad"
    myProcess.StartInfo <- myProcessStartInfo
    // Start process.
    myProcess.Start() |> ignore
    // Allow the process to finish starting.
    myProcess.WaitForInputIdle() |> ignore
    printfn $"Main window Title : {myProcess.MainWindowTitle}"

    myProcess.CloseMainWindow() |> ignore
with e ->
    printfn $" Message : {e.Message}"
Imports System.Diagnostics

Class MainWindowTitleClass
    Public Shared Sub Main()
        Try
            ' Create an instance of process component.
            Using myProcess As New Process()
                ' Create an instance of 'myProcessStartInfo'.
                Dim myProcessStartInfo As 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()
            End Using
        Catch e As Exception
            Console.Write($" Message : {e.Message}")
        End Try
    End Sub
End Class

Комментарии

Процесс имеет главное окно, связанное с ним, только если процесс имеет графический интерфейс. Если связанный процесс не имеет главного окна (так что MainWindowHandle это равно нулю), или если система не может определить, что в главном окне (например, на некоторых платформах Unix) MainWindowTitle имеется пустая строка ("").

Если вы только что запустили процесс и хотите использовать его название главного окна, рассмотрите возможность использования WaitForInputIdle метода, чтобы завершить процесс, гарантируя создание дескриптора главного окна. В противном случае система создает исключение.

Note

Главное окно — это окно, которое в настоящее время имеет фокус; Обратите внимание, что это не может быть основным окном для процесса. Чтобы обновить объект, необходимо использовать Refresh метод, чтобы Process получить самый актуальный дескриптор главного окна, если он изменился.

Применяется к