Process.MainWindowTitle Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Recebe a legenda da janela principal do processo.
public:
property System::String ^ MainWindowTitle { System::String ^ get(); };
public string MainWindowTitle { get; }
member this.MainWindowTitle : string
Public ReadOnly Property MainWindowTitle As String
Valor de Propriedade
O título principal do processo.
Exceções
A MainWindowTitle propriedade não está definida porque o processo terminou.
Está a tentar aceder à MainWindowTitle propriedade de um processo que está a correr num computador remoto. Esta propriedade está disponível apenas para processos que estão a correr no computador local.
Exemplos
O exemplo seguinte inicia uma instância do Notepad e recupera a legenda da janela principal do processo.
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
Observações
Um processo tem uma janela principal associada apenas se o processo tiver uma interface gráfica. Se o processo associado não tiver uma janela principal (portanto, MainWindowHandle isso é zero), ou se o sistema não conseguir determinar que existe uma janela principal (como pode acontecer em algumas plataformas Unix), MainWindowTitle é uma cadeia vazia ("").
Se acabou de iniciar um processo e quiser usar o título da janela principal, considere usar o WaitForInputIdle método para permitir que o processo termine de começar, garantindo que a manivela da janela principal foi criada. Caso contrário, o sistema lança uma exceção.
Note
A janela principal é a janela que atualmente tem o foco; Note que esta pode não ser a janela principal para o processo. Deve usar o Refresh método para atualizar o Process objeto para obter o handle da janela principal mais atualizado caso tenha sido alterado.