如何在C中调用Py_Initialize()来捕获和处理致命错误

时间:2016-07-27 22:31:58

标签: python c++ exception

我将Python嵌入到C中,在我的代码开头我有类似下面的内容。一切正常,直到用户意外删除python33文件夹。这导致Py_Initialize()抛出一个致命的错误,说“致命的Python错误:Py_Initialize:无法加载文件系统编解码器”然后我的应用程序崩溃了。我试图使用try {} catch(...)来捕获这种错误,但似乎无法正常工作。我想知道是否有任何方法可以优雅地捕捉和处理它。

try
{
    if(!Py_IsInitialized())
    {
        Py_Initialize();
    }
}
catch(...)
{
    std::out << "Can't initialized Python" << std::endl;
    return;
}

0 个答案:

没有答案