首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python comtypes '_Dispatch‘对象不可调用

Python comtypes '_Dispatch‘对象不可调用
EN

Stack Overflow用户
提问于 2013-02-14 03:17:42
回答 1查看 668关注 0票数 0

我一直在使用Python的comtypes模块来自动化Photoshop,但是当我尝试在windows8上执行命令时,我得到了一个TypeError。

这些命令在windows7上运行得很好。

这是我使用的代码示例:

代码语言:javascript
复制
from comtypes.client import CreateObject

psApp = CreateObject("Photoshop.Application")

#Create a new document- this is where it bombs out!
psApp.Documents.Add(1024, 1024, 72, 'new_source_texture', 2, 1, 1)

这是我得到的回溯:

代码语言:javascript
复制
Traceback (most recent call last):
    File "test.py", line 9, in <module>
    psApp.Documents.Add(1024, 1024, 72, 'new_source_texture', 2, 1, 1)
TypeError: '_Dispatch' object is not callable

我怀疑这与comtype返回错误类型的对象有关,但我是个新手,所以如果有人能为我指出正确的方向,我将不胜感激!

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-16 03:44:10

这似乎是一个与Windows8的兼容性问题。一旦我将Python命令行设置为在Windows XP兼容模式下执行,comtypes模块就能正常工作。

同样的修复方法也适用于win32com模块,我尝试过该模块,但遇到了类似的困难。

要在windows 8中设置兼容模式,您可以执行以下步骤:

  1. 转到控制面板。
  2. 单击“程序”类别。
  3. 单击‘运行为以前版本的windows制作的程序’
  4. 逐步通过故障排除程序,选择Python命令行作为目标程序。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14861258

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档