python-3.x - 如何在 win32 错误消息中读取 EXCEPINFO 元组?

标签 python-3.x win32com

我正在编写一个与 Excel 交互的应用程序。但是,我遇到了一个无法追踪的错误。我的追溯说:

pywintypes.com_error: (-2147352567, 'Exception occurred.', (0, None, None, None, 0, -2147352565), None)

使用 com_error文档,我可以弄清楚大部分。但是,我不知道如何读取内部元组。文档将其称为(可选) excepinfo 元组,但他们没有描述它的内容是什么。

最佳答案

来自 https://msdn.microsoft.com/en-us/library/windows/desktop/ms221133(v=vs.85).aspx

typedef struct tagEXCEPINFO {
  WORD    wCode;
  WORD    wReserved;
  BSTR    bstrSource;
  BSTR    bstrDescription;
  BSTR    bstrHelpFile;
  DWORD   dwHelpContext;
  PVOID   pvReserved;
  HRESULT (__stdcall *pfnDeferredFillIn)(struct tagEXCEPINFO*);
  SCODE   scode;
} EXCEPINFO, *LPEXCEPINFO;

检查由我的一个应用程序生成的 com_error 输出,我认为 excepinfo 元组映射到
(wCode, bstrSource, bstrDescription, bstrHelpFile, dwHelpContext, scode)
诚然,我没有费心去寻找 pywin32 源代码来查找元组的构造位置。

关于python-3.x - 如何在 win32 错误消息中读取 EXCEPINFO 元组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43790925/

相关文章:

python - 使用 win32com 模块的带有 CPython 的 RegFree DLL

python - 列出 COMobject 中的所有方法

python - 从需要登录的社交媒体网站抓取最新帖子时,如何保持不被发现?

python-3.x - 如何对多个属性进行机器学习(树)?

python - 没有名为 'Ocr' 的模块

python - 如何使用 python 将 mbox 文件转换为 .msg 文件格式?

python - Win32com、Python 和 AutoCAD 的变体错误

python - 我如何遍历一年中的几个月并在 python 中打印它们?

sql - 连续对某行进行pandas列操作

python - 使用 Python 从 Word (.docx) 中提取表格标题