AttachThreadInputの使い方は?
AttachThreadInput関数は、2つのスレッドの入力処理を結びつけ、1つのスレッドがもう1つのスレッドの入力メッセージを受信できるようにします。
以下は関数のプロトタイプです:
BOOL AttachThreadInput(
DWORD idAttach,
DWORD idAttachTo,
BOOL fAttach
);
パラメーターの説明:
- idAttach: 入力を接続するスレッドの識別子。
- idAttachTo: 入力されたスレッド識別子を取得する必要があります。
- fAttach:入力を接続するかどうかを指定します。TRUEの場合、入力を接続します。FALSEの場合、入力を切断します。
使用例:
// 将当前线程的输入连接到指定线程的输入
BOOL success = AttachThreadInput(GetCurrentThreadId(), targetThreadId, TRUE);
if (success) {
// 连接成功,可以向指定线程发送输入消息
// ...
// 断开输入连接
AttachThreadInput(GetCurrentThreadId(), targetThreadId, FALSE);
} else {
// 连接失败,处理错误
// ...
}
AttachThreadInput関数を使用した後は、2つのスレッドのメッセージ処理に影響を与える可能性があるため、使用後は必ず入力接続を切断することを忘れないでください。