当前位置: 首页 > 面试题库 >

您可以在Python中使用COM / ActiveX做什么?

梅修贤
2023-03-14
问题内容

我读过,可以使用COM / ActiveX自动执行Crystal Reports中的月度报告。我不太了解这是什么,甚至可以使用它来做什么。

我也使用Excel进行了大量工作,看起来您也使用COM / ActiveX与其进行交互。

有人可以解释它是如何工作的,也许可以提供一个简短的例子?


问题答案:

首先,您必须安装出色的pywin32模块。

它提供COM支持。您需要运行该makepy实用程序。它位于C:\...\Python26\Lib\site- packages\win32com\client。在Vista上,必须以管理员权限运行。

该实用程序将显示所有可用的COM对象。您可以找到自己的对象,它将为此对象生成一个python包装器。

包装器是在C:\...\Python26\Lib\site- packages\win32com\gen_py文件夹中生成的python模块。该模块包含COM对象的接口。该文件的名称是COM唯一ID。如果文件很多,有时很难找到正确的文件。

之后,您只需要调用正确的界面即可。太神奇了:)

excel的简短示例

import win32com.client

xlApp = win32com.client.Dispatch("Excel.Application")
xlApp.Visible=1

workBook = xlApp.Workbooks.Open(r"C:\MyTest.xls")
print str(workBook.ActiveSheet.Cells(i,1))
workBook.ActiveSheet.Cells(1, 1).Value = "hello"                
workBook.Close(SaveChanges=0) 
xlApp.Quit()


 类似资料:
  • 问题内容: 我开始学习Python,并且遇到过生成器函数,这些函数中包含yield语句。我想知道这些功能确实可以解决哪些类型的问题。 问题答案: 生成器为您提供懒惰的评估。您可以通过遍历它们来使用它们,可以显式地使用“ for”,也可以隐式地将其传递给任何迭代的函数或构造。您可以将生成器视为返回多个项目,就像它们返回一个列表一样,但是与其一次一次返回它们而不是一次全部返回它们,而是将生成器功能暂停

  • 本文向大家介绍Python可以用来做什么,包括了Python可以用来做什么的使用技巧和注意事项,需要的朋友参考一下 Python技术可做web开发 很多人只了解Java、PHP可做web开发,但针对Python也可以做web开发却了解很少。很多人将会不清楚,Python实际上是和互联网技术一起长大的。做为动态性语言,而且具备高些的抽象层次的Python和Perl,迅速就被开发者们发觉更合适用以开发

  • 问题内容: 一位同事最近问我如何深度克隆Map,我意识到我可能从未使用过clone()方法,这让我感到担忧。 您发现需要在何处克隆对象的最常见情况是什么? 问题答案: 我假设您是用Java 指的。如果是,请告知它存在一些主要问题,并且在大多数情况下,建议不要使用它。请参阅Joshua Bloch撰写的“ Effective Java”中 的第11项,以获取完整答案。我相信您可以安全地在原始类型数组

  • 问题内容: 传统观点认为,您只能抛出在Java 中扩展的对象,但是是否可以禁用字节码验证程序并让Java编译并运行抛出任意对象(甚至是原语)的代码? 我查找了JVM ,它将弹出操作数堆栈中的第一个objref。但是会检查所述引用是否指向运行时? 问题答案: 这取决于您的JVM实现。根据Java VM规范,如果对象不是,则它是未定义的行为。 objectref 必须 是引用类型,并且必须引用Thro

  • 问题内容: 之间有什么区别: 我看到super在只有单一继承的类中经常使用它。我知道为什么你会在多重继承中使用它,但是不清楚在这种情况下使用它的好处。 问题答案: 单继承的好处是微不足道的-大多数情况下,你不必将基类的名称硬编码到每个使用其父方法的方法中。 但是,如果不使用,几乎不可能使用多重继承。这包括常见的惯用语,例如,接口,抽象类等。这扩展到了以后扩展你的代码的代码。如果以后有人想编写一个扩

  • 问题内容: Google不允许我进行搜索,因此我在查找相关文档时遇到了麻烦。有人知道吗 问题答案: 在成对的对象之间执行 就地 +操作。尤其是: 集合:联合操作 dicts:更新操作 计数器:(多集)联合运算 数字:按位或,二进制运算 在大多数情况下,它与操作员有关。请参阅下面的示例。 套装 例如,两个分配的集合的并并共享以下等效表达式: 其中的最终值等于: 分配的OR操作 就地或运算 通过特殊方