关闭记事本窗口而不保存更改

本文关键字:保存更改 窗口 记事本 | 更新日期: 2023-09-27 18:21:31

我想在不提示"是否保存更改"对话框的情况下关闭记事本文件。我试过了:

SendMessage(handle, 0x0010, IntPtr.Zero, IntPtr.Zero);

但询问我是否要保存更改。此外,DestroyWindow(HWND)也不起作用。

如何克服这个问题?

非常感谢。。。

关闭记事本窗口而不保存更改

如果你不关心记事本上的数据,那么就简单地终止它的进程。

[DllImport("user32.dll", SetLastError=true)]
static extern uint GetWindowThreadProcessId(IntPtr hWnd, out uint processId);

现在使用进程id 杀死进程

Process p = Process.GetProcessById(processId);
p.Kill();

只需添加到@prem发布的答案中,就绝对不需要使用API。NET已经包含了实现这一点的所有内容,如下面的示例所示。

var processes = Process.GetProcessesByName("notepad");
foreach (var process in processes)
    process.Kill();