【问题标题】:py2exe and win32com with excelpy2exe 和 win32com 与 excel
【发布时间】:2013-09-05 08:52:47
【问题描述】:

我制作了一个脚本,可以更改 excel 文件中的颜色。为此我使用:
将 win32com.client 导入为 win32
excel = win32.gencache.EnsureDispatch('Excel.Application')

现在我想用 py2exe 制作一个 exe 文件。它给出了一个密钥错误。我知道问题出在 win32com.client 上,但我无法解决。

有人有想法吗?

发送

【问题讨论】:

    标签: py2exe win32com


    【解决方案1】:

    免责声明-这主要是猜测:

    尝试使用 win32.Dispatch 或 win32.DispatchEx。 EnsureDispatch 实际上创建了一个 .py 文件,其中包含一个表示请求的 COM 对象的类并返回它,因此它可能与 py2exe 功能发生奇怪的交互。

    我不知道 COM 在 python 包装器下是如何工作的,但我猜想 py2exe 可能会锁定 gencache makepy 文件中的 COM 对象数据集,而不是允许它动态生成如果在运行时环境中发生变化。

    【讨论】:

      【解决方案2】:

      我刚刚解决了这个问题。 如果你想使用 com 服务的 win32,首先你应该确保 com 服务已经运行,通过执行来检查这个: 命令行中的“dcomcnfg”,如果excel的com服务已经正确启动,你应该在dcom服务列表中看到“Microsoft Excel应用程序”,如下所示: the correct result should like this 如果“Microsoft Excel 应用程序”不在列表中,您可以通过Microsoft Excel or Microsoft Word does not appear in DCOM Configuration snap-in解决此问题

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-09-23
        • 1970-01-01
        • 1970-01-01
        • 2011-06-15
        • 1970-01-01
        • 2012-12-22
        • 2012-12-22
        相关资源
        最近更新 更多