如何打印无法导入的DLL的名称?

时间:2019-02-14 07:02:35

标签: python visual-c++ mfc dllimport

在我的MFC应用程序中,我正在使用以下代码行导入python模块。

pyImportedModuleObj = PyImport_Import(pyNameFilenameObj);

即使路径是正确的,我也会得到NULL。这是因为python异常。我试图打印实际的python异常。

    bool CheckPythonError() {
        if (PyObject *perr = PyErr_Occurred()) {
            PyObject *errobj, *errdata, *errtraceback, *pyerr, *pydata, *pytrc;

            PyErr_Fetch(&errobj, &errdata, &errtraceback);
            pyerr = NULL;
            pydata = NULL;
            CString save_error_type, save_error_data, save_traceback;
            if (errobj != NULL &&
            (pyerr = PyObject_Str(errobj)) != NULL &&     /* str(object) */
            (PyString_Check(pyerr))) {
                save_error_type = PyString_AsString(pyerr);
                pydata = PyObject_Str(errdata);
                PyString_Check(pydata);
                save_error_data = PyString_AsString(pydata);
                pytrc = PyObject_Str(errtraceback);
                if (errtraceback) {
                    save_traceback = PyString_AsString(errtraceback);
                }
                else {
                    save_traceback = "No traceback available";
                }
            }
            else {
                save_error_type = "<unknown exception type>";
            }
            Py_XDECREF(pyerr);
            Py_XDECREF(pydata);
            //WI-29387 - Replaced MessageBox with g_MsgBoxMgr.ShowMessageBox
            MessageBox(NULL, save_error_type + "\n" + save_error_data, "Error", MB_OK | MB_ICONINFORMATION);
            return TRUE;
        }
        return FALSE;
    }

我收到如下所示的python错误。

enter image description here

我还需要打印DLL名称。还请给我建议如何解决此错误。预先感谢。

0 个答案:

没有答案