0

タイトルはそれをすべて言います、私はこのコードを持っています:

[DllImport("user32.dll", SetLastError = true)]
static extern IntPtr FindWindow(string lpClassName, string lpWindowName);

[DllImport("user32.dll", EntryPoint = "FindWindow", SetLastError = true)]
static extern IntPtr FindWindowByCaption(IntPtr ZeroOnly, string lpWindowName);

[DllImport("user32.dll", CharSet = CharSet.Auto)]
static extern IntPtr SendMessage(IntPtr hWnd, UInt32 Msg, IntPtr wParam, IntPtr lParam);

const UInt32 WM_CLOSE = 0x0010;

ここに私が追加したものがありますForm1_Load

IntPtr windowPtr = FindWindowByCaption(IntPtr.Zero, "Untitled - Notepad");
            if (windowPtr == IntPtr.Zero)
            {
                MessageBox.Show("Window not found");
                return;
            }

            SendMessage(windowPtr, WM_CLOSE, IntPtr.Zero, IntPtr.Zero);

上記のコードをForm1_Load関数に追加しましたが、実際には機能し、プログラムを開くとメモ帳が閉じますが、私の質問は、関数が開くたびにメモ帳を閉じるように、関数を繰り返す方法Form1_Loadです。

4

1 に答える 1