Process.MainWindowHandle プロパティ


関連付けられたプロセスのメイン ウィンドウで使用するウィンドウ ハンドルを取得します。Gets the window handle of the main window of the associated process.

 property IntPtr MainWindowHandle { IntPtr get(); };
public IntPtr MainWindowHandle { get; }
member this.MainWindowHandle : nativeint
Public ReadOnly Property MainWindowHandle As IntPtr


関連付けられたプロセスのメイン ウィンドウで使用する、システムが生成したウィンドウ ハンドル。The system-generated window handle of the main window of the associated process.


プロセスが終了したため、MainWindowHandle が定義されていません。The MainWindowHandle is not defined because the process has exited.

リモート コンピューターで実行中のプロセスの MainWindowHandle プロパティにアクセスしようとしています。You are trying to access the MainWindowHandle 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.


メインウィンドウは、現在フォーカスがあるプロセス (TopLevel フォーム) によって開かれたウィンドウです。The main window is the window opened by the process that currently has the focus (the TopLevel form). Refresh メソッドを使用して、Process オブジェクトを更新し、現在のメインウィンドウのハンドルが変更されている場合はそのハンドルを取得する必要があります。You must use the Refresh method to refresh the Process object to get the current main window handle if it has changed. 一般に、ウィンドウハンドルはキャッシュされているため、Refresh を事前に使用して、現在のハンドルを確実に取得できるようにします。In general, because the window handle is cached, use Refresh beforehand to guarantee that you'll retrieve the current handle.

MainWindowHandle プロパティは、ローカルコンピューター上で実行されているプロセスに対してのみ取得できます。You can get the MainWindowHandle property only for processes that are running on the local computer. MainWindowHandle プロパティは、プロセスに関連付けられているウィンドウを一意に識別する値です。The MainWindowHandle property is a value that uniquely identifies the window that is associated with the process.

プロセスには、プロセスにグラフィカルインターフェイスがある場合にのみ、関連付けられているメインウィンドウがあります。A process has a main window associated with it only if the process has a graphical interface. 関連付けられたプロセスにメインウィンドウがない場合、MainWindowHandle 値は0になります。If the associated process does not have a main window, the MainWindowHandle value is zero. この値は、非表示になっているプロセス (タスクバーに表示されないプロセス) でも0になります。The value is also zero for processes that have been hidden, that is, processes that are not visible in the taskbar. これは、タスクバーの右端にある通知領域にアイコンとして表示されるプロセスの場合に発生する可能性があります。This can be the case for processes that appear as icons in the notification area, at the far right of the taskbar.

プロセスを開始したばかりで、メインウィンドウハンドルを使用する場合は、WaitForInputIdle メソッドを使用して、プロセスの開始を許可し、メインウィンドウハンドルが作成されていることを確認します。If you have just started a process and want to use its main window handle, consider using the WaitForInputIdle method to allow the process to finish starting, ensuring that the main window handle has been created. この操作を行わない場合、例外がスローされます。Otherwise, an exception will be thrown.


直前の呼び出し元に対する完全な信頼の場合。for full trust for the immediate caller. このメンバーは、部分的に信頼されているコードから使用することはできません。This member cannot be used by partially trusted code.