【问题标题】:Extract GUID from ActiveX COM DLL using Python使用 Python 从 ActiveX COM DLL 中提取 GUID
【发布时间】:2014-10-27 06:10:24
【问题描述】:

您将如何以跨平台方式仅使用 Python 提取 ActiveX COM DLL 的 GUID?

我遇到了pythoncom,它带有pywin32。它有一个LoadTypeLib 函数可以做到这一点:

import pythoncom
dll = pythoncom.LoadTypeLib("C:\\path\to\\my.dll")
print str(dll.GetLibAttr()[0])

这比我目前依赖外部 CLI 应用程序的解决方案要好,但是跨平台解决方案会更好,因为我不相信 pywin32 可以轻松安装在 Linux CI 上。

【问题讨论】:

    标签: python dll com activex guid


    【解决方案1】:

    我最终使用了很棒的 comtypes 包:

    from comtypes.typeinfo import LoadTypeLibEx
    lib = LoadTypeLibEx("C:\\path\to\\my.dll")
    print lib.GetLibAttr().guid
    

    代码实际上是相同的;它实际上从OleAut32 调用相同的LoadTypeLib,因此它仅适用于Windows,但是comtypes 可以通过pip 安装,这使得分发更容易。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-09-10
      • 1970-01-01
      • 2014-10-05
      • 2014-09-13
      • 2010-12-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多