【发布时间】:2020-06-22 18:42:17
【问题描述】:
今天我使用 win32api.SetConsoleCtrlHandler 捕捉控制台窗口的关闭按钮。
代码如下:
import os
import sys
import win32api
if __name__ == "__main__":
def callback(sig):
print("Exit handler called!")
exit_fun()
sys.exit(0)
def exit_fun():
input("Press any key to exit!")
win32api.SetConsoleCtrlHandler(callback, True)
print("Press to quit")
try:
input()
except (EOFError):
while 1:
pass
我有一个关于exit_fun功能的问题,当我使用ctrl c关闭cmd窗口时,它可以工作!
但是!我尝试使用控制台窗口的关闭按钮。 exit_fun 不起作用。
我不知道为什么...
感谢您的回答:)
【问题讨论】:
-
关闭控制台窗口会终止控制台进程。它不会追溯注入控制序列。尽管从问题中不清楚,但您需要解决什么问题。 “它不起作用” 根本不是问题陈述。 How to Ask 解释如何做得更好。