我有一个 Win32 控制台应用程序(从 Visual Studio 构建为 Win32 控制台项目),它执行一些日志文件 (.txt) 处理。我有一个单独的 perl 程序(遗留程序),它现在需要启动这个 Win32 控制台应用程序,然后在完成后停止。
Perl 程序使用 Win32::Process API 启动 Win32 控制台应用程序的实例。当通过“kill -x pid”或 Win32:Process:Kill 完成时,它可以终止控制台应用程序。问题是控制台应用程序需要知道它是否被杀死/终止,以便它可以刷新日志处理。控制台应用程序已经通过 SetConsoleCtrlHandler API 注册了一个处理程序,但是当从 perl 程序中被 kill -2/3 pid 杀死时不会被调用。
- 我在 perl 程序或 Win32 控制台应用程序中进行了哪些更改,以便它可以知道何时终止?
谢谢!