Я пытаюсь использовать функцию atexit для вызова функции, но она не работает, если я использую командный файл для выполнения команды taskkill в программе. Есть ли способ сделать эту работу?Может ли atexit() вызываться во время команды taskkill?
ответ
Нет, нет способа.
Вся цель taskkill
- убить процесс. Он не будет изящно закрыт.
Вещь не продолжает делать вещи после ее смерти.
Согласитесь, функция atexit() используется для регулярного отключения процесса. – gmug
Благодарим вас за ответ. У меня было ощущение, что этого не было. Просто хотел убедиться в том, что у кого-то есть способ обойти это. –
Если бы кто-то нашел способ обойти это, это было бы серьезной проблемой безопасности! –
Что значит «во время команды taskkill»? –
Вы используете 'taskkill.exe/f'? Потому что это вызывает api-процесс TerminateProcess api, который убивает его немедленно. –
В любом случае, [этот ответ] (http://stackoverflow.com/a/15277057/21567) должен также применяться к вашему вопросу. –