程序意外终止后如何释放资源?

use*_*335 7 c++ windows

我正在Visual Studio 2019上编写控制台C ++程序,其中使用了第三方相机库。这个lib需要我在程序的开始处调用libInitialize()并在程序结束时调用libTerminate()。如果我不调用libTerminate(),则下次启动该程序时,我将收到一条错误消息,指出该相机仍在被其他程序使用。只要我正确退出程序,一切都很好。但是,如果我通过关闭控制台窗口或按调试器中的停止按钮来终止程序,则永远不会调用libTerminate()。所以我的问题是,每当程序意外终止时,是否有任何方法可以执行代码?