清问:process类的close()和closeMainWindow()有什么区别?

huhaha7171 2004-07-20 04:57:42
为什么我调用完一个窗口程序用close()关不了,只能用closeMainWindow()关掉。
close()不是关掉所有资源吗
...全文
1461 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
aSalt 2004-07-21
  • 打赏
  • 举报
回复
关闭对象或子窗体
huhaha7171 2004-07-21
  • 打赏
  • 举报
回复
谢谢!还有close()?
chenyuming2004 2004-07-20
  • 打赏
  • 举报
回复
执行进程时,其消息循环处于等待状态。每当操作系统向该进程发送 Windows 消息时,该消息循环执行。调用 CloseMainWindow 会向主窗口发送关闭请求,在一个设计规范的应用程序中,该请求会关闭子窗口并撤消此应用程序所有正在运行的消息循环。通过调用 CloseMainWindow 发出的退出进程的请求不强制应用程序退出。应用程序可以在退出前请求用户验证,也可以拒绝退出。若要强制应用程序退出,请使用 Kill 方法。CloseMainWindow 的行为与用户使用系统菜单关闭应用程序主窗口的行为一样。因此,通过关闭主窗口发出的退出进程的请求不强制应用程序立即退出。

如果调用 Kill,则可能丢失该进程编辑的数据或分配给该进程的资源。Kill 将导致进程不正常终止,因而只应在必要时使用。CloseMainWindow 使进程能够有序地终止并关闭所有窗口,因而对于拥有界面的应用程序,使用它更好。如果 CloseMainWindow 失败,则可以使用 Kill 终止进程。Kill 是终止没有图形化界面的进程的唯一方法。

只能对在本地计算机上运行的进程调用 Kill 和 CloseMainWindow。无法使远程计算机上的进程退出。仅可查看在远程计算机上运行的进程的信息。

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧