C++でコンソールまたはウィンドウアプリケーションを終了する方法
Windows APIの関数によりC++から表示中のウィンドウを閉じることは可能です。
- Windows.hヘッダーファイル包含
#include <Windows.h>
- FindWindow 関数を使って閉じてしまいたいウィンドウを見つけます。この関数には、クラス名とウィンドウのタイトルの 2 つの引数が必要です。
HWND hWnd = FindWindow(NULL, "窗口标题");
- PostMessage関数を使用して、WM_CLOSE メッセージをウィンドウに送信します。
PostMessage(hWnd, WM_CLOSE, 0, 0);
完全なサンプルコードを以下に示します。
#include <Windows.h>
int main() {
// 查找窗口
HWND hWnd = FindWindow(NULL, "窗口标题");
if (hWnd != NULL) {
// 发送关闭消息
PostMessage(hWnd, WM_CLOSE, 0, 0);
} else {
// 窗口未找到
// 执行相应的处理逻辑
}
return 0;
}
本メソッドは現在開いているウィンドウを閉じる場合にのみ有効で、現在実行中のプログラムがオープンしていないウィンドウを閉じることはできません。