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 процесса, запущенного на удаленном компьютере. Это свойство доступно только для процессов, запущенных на локальном компьютере.
Примеры
В следующем примере запускается экземпляр Блокнота и извлекается подпись окна main процесса.
#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
Комментарии
Процесс имеет окно main, связанное с ним, только если процесс имеет графический интерфейс. Если у связанного процесса нет окна main (поэтому MainWindowHandle оно равно нулю) или система не может определить, что есть окно main (как это может быть на некоторых платформах Unix), MainWindowTitle — это пустая строка ("").
Если вы только что начали процесс и хотите использовать его main заголовке окна, попробуйте использовать WaitForInputIdle метод , чтобы завершить процесс, убедив, что дескриптор окна main был создан. В противном случае система создает исключение.
Примечание
Окно main — это окно, которое в настоящее время находится в фокусе. Обратите внимание, что это может не быть основным окном для процесса. Для обновления Process объекта необходимо использовать Refresh метод , чтобы получить наиболее актуальный main дескриптор окна, если он был изменен.