huayanzhen 发表于 2024-5-16 14:14:50

请教火山的控制台程序在关闭前执行一个方法,请问如何写?

请教火山的控制台程序在关闭前执行一个方法,请问如何写?
谢谢指教

hcwanz 发表于 2024-5-16 15:07:54

在启动方法里加上呗

huayanzhen 发表于 2024-5-16 15:51:18

hcwanz 发表于 2024-5-16 15:07
在启动方法里加上呗

加什么啊?还请明示一下,大佬

hcwanz 发表于 2024-5-16 15:57:57

huayanzhen 发表于 2024-5-16 15:51
加什么啊?还请明示一下,大佬

你想让控制台执行那个方法,就在启动方法里加上那个方法呗

huayanzhen 发表于 2024-5-16 16:36:06

hcwanz 发表于 2024-5-16 15:57
你想让控制台执行那个方法,就在启动方法里加上那个方法呗

大佬,我是要关闭CMD窗口时执行,不是启动CMD时执行

hcwanz 发表于 2024-5-16 16:38:08

huayanzhen 发表于 2024-5-16 16:36
大佬,我是要关闭CMD窗口时执行,不是启动CMD时执行

那就在启动方法返回前执行啊。
启动方法一返回,cmd就结束了,启动方法不返回,cmd就不会结束。

huayanzhen 发表于 2024-5-16 16:41:39

hcwanz 发表于 2024-5-16 16:38
那就在启动方法返回前执行啊。
启动方法一返回,cmd就结束了,启动方法不返回,cmd就不会结束。 ...

启动方法最后一行我写的是死循环,是不会自动结束CMD的
我的需求是手动关闭CMD的时候执行

回忆菌 发表于 2024-5-16 16:56:56

本帖最后由 回忆菌 于 2024-5-16 16:59 编辑

<火山程序 类型 = "通常" 版本 = 1 />


@ SetConsoleCtrlHandler((PHANDLER_ROUTINE)&@<测试>,true);

方法 测试 <静态>
参数 参数 <类型 = 短整数 注释 = "2 (单击控制台关闭 或 单击任务管理器中的结束任务按钮)。">
{
    调试输出 (参数)
}
这个方法只能俘获到 点控制台关闭按钮 或者 是任务管理器强制退出 俘获不到正常流程的退出不过你说你控制台是死循环 想来不会正常退出只会点关闭按钮
够用了{:2_27:}



huayanzhen 发表于 2024-5-17 09:10:13

回忆菌 发表于 2024-5-16 16:56
这个方法只能俘获到 点控制台关闭按钮 或者 是任务管理器强制退出 俘获不到正常流程的退出不过你说你控制台 ...

非常感谢,可用了,谢谢大佬
页: [1]
查看完整版本: 请教火山的控制台程序在关闭前执行一个方法,请问如何写?