python-使用pywin32对接应用的COM接口0.9.13

pywin32的安装

使用如下代码安装好pywin32

pip install pywin32

pywin32目录说明

安装好了以后,就会在python安装的根目录中/Lib/site-packages/下,增加三个win32相关的文件夹win32、win32com和win32comext,如果对接应用COM,则使用win32com文件夹的内容。另外,在win32com有示例和demo,可以参考。

使用pywin32生产对应应用的python接口

  1. 在win32com目录下新建一个名为gen_py的目录,用于存放生成的python接口文件;如果不新建默认会生成到C:\Users<username>\AppData\Local\Temp\下。
  2. 双击/win32com/client/目录中 的makepy.py,会弹出当前机器中的所有com组件。
  3. 单击需要生成python接口文件的应用。
  4. 在/win32com/gen_py/目录下就可以看到生成的py文件了,如一些基本信息,以及内部的接口函数信息。

关于生成接口python文件的说明

  1. 类和类之间的关系如下,CLSID 是当前类的IID,coclass_clsid 是实现类的IID
class IEApp(DispatchBaseClass):

    'IEApp 接口'

    CLSID = IID('{68E5F4EE-3C09-474A-8068-AF7F1366001B}')

    coclass_clsid = IID('{163BB172-EAC4-4249-9E5F-42B381999AE0}')

实现类部分代码

#This CoClass is known by the name 'e.App.1' 
class ECSMainWindow(CoClassBaseClass): # A CoClass

    # ECSMainWindow Class

    CLSID = IID('{163BB172-EAC4-4249-9E5F-42B381999AE0}')

    coclass_sources = [

    ]

如何使用接口python文件

下面是一段某个场景的代码,通过对e.App.1实例化,调用某个类的方法

import win32com.client
EApp = win32com.client.Dispatch('e.App.1')
TEXT = EApp .GetText()
TempGroup = ['1','2','n']
TEXT .StartTemp(0,TempGroup,[])

其中e.App.1,是从父类或者本类注释找到的

This CoClass is known by the name ‘e.App.1’ 这行注释中提供的类名

参考

https://zhuanlan.zhihu.com/p/689862005
https://www.cnblogs.com/stacklike/p/8278996.html

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值