Process.MainWindowTitle Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene el título de la ventana principal del proceso.
public:
property System::String ^ MainWindowTitle { System::String ^ get(); };
public string MainWindowTitle { get; }
member this.MainWindowTitle : string
Public ReadOnly Property MainWindowTitle As String
Valor de propiedad
Título de la ventana principal del proceso.
Excepciones
La propiedad MainWindowTitle no está definida porque el proceso ha terminado.
Está intentando obtener acceso a la propiedad MainWindowTitle de un proceso que se ejecuta en un equipo remoto. Esta propiedad está disponible únicamente para los procesos que se ejecutan en el equipo local.
Ejemplos
En el ejemplo siguiente se inicia una instancia del Bloc de notas y se recupera el subtítulo de la ventana principal del proceso.
#using <System.dll>
using namespace System;
using namespace System::Diagnostics;
int main()
{
try
{
// Create an instance of process component.
Process^ myProcess = gcnew Process;
// Create an instance of 'myProcessStartInfo'.
ProcessStartInfo^ myProcessStartInfo = gcnew ProcessStartInfo;
myProcessStartInfo->FileName = "notepad";
myProcess->StartInfo = myProcessStartInfo;
// Start process.
myProcess->Start();
// Allow the process to finish starting.
myProcess->WaitForInputIdle();
Console::Write( "Main window Title : {0}", myProcess->MainWindowTitle );
myProcess->CloseMainWindow();
myProcess->Close();
}
catch ( Exception^ e )
{
Console::Write( " Message : {0}", e->Message );
}
}
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}");
}
}
}
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
Comentarios
Un proceso tiene una ventana principal asociada solo si el proceso tiene una interfaz gráfica. Si el proceso asociado no tiene una ventana principal (por lo que MainWindowHandle es cero), o si el sistema no puede determinar que hay una ventana principal (como puede ser el caso en algunas plataformas Unix), MainWindowTitle es una cadena vacía ("").
Si acaba de iniciar un proceso y desea usar su título de ventana principal, considere la posibilidad de usar el WaitForInputIdle método para permitir que el proceso finalice el inicio, asegurándose de que se ha creado el identificador de ventana principal. De lo contrario, el sistema produce una excepción.
Nota
La ventana principal es la ventana que actualmente tiene el foco; Tenga en cuenta que es posible que esto no sea la ventana principal del proceso. Debe usar el Refresh método para actualizar el Process objeto para obtener el identificador de ventana principal más actualizado si ha cambiado.