python调用win32com创建可响应应用事件的文档对象

本文介绍了如何在Python3环境中,通过win32com DispatchWithEvents模块创建一个能响应Word文档事件的应用对象。在Python2的基础上进行了调整,解决了在Python3.6中出现的语法问题。当Word文档获取焦点或内容被修改时,程序将打印相应提示。注意,Word的修改仅基于原始未保存的文档,且在未保存前只会触发一次事件。
摘要由CSDN通过智能技术生成

一般使用wordApp = win32com.client.Dispatch('Word.Application')创建应用对象,但该对象不支持消息回传,查阅网络,https://win32com.goermezer.de/microsoft/office/events-in-microsoft-word-and-excel.html

给出了利用wwin32com的DispatchWithEvents模块,创建可响应文档事件的方案。

原文是基于python2的,在python3.6下运行有语法报错,重新调整如下:

# OfficeEvents - test/demonstrate events with Word and Excel.
from win32com.client import DispatchWithEvents, Dispatch
import msvcrt, pythoncom
import time, sys
import types

import threading
stopEvent = threading.Event()

def TestExcel():
    class ExcelEvents:
        def OnNewWorkbook(self, wb):
            if type(wb) != types.InstanceType:
                raise RuntimeError( "The transformer doesnt appear to have translated this for us!")
            self.seen_events["OnNewWorkbook"] = None
        def OnWindowActivate(self, wb, wn):
            if type(wb) != types.InstanceTy
对于Python Watchdog和Win32com的组合,我无法找到确切的引用内容来回答你的问题。但是,我可以为你提供一些关于这两个主题的一般信息。 Python Watchdog是一个Python库,用于监控文件和目录的变化。它可以检测并触发特定事件,例如文件的创建、修改和删除。通过使用Watchdog,你可以编写代码来响应这些事件并采取相应的操作。 Win32com是一个Python的扩展模块,它提供了与Windows操作系统的COM接口的连接。它允许你使用Python调用和操作COM对象,从而实现与Windows应用程序的交互。 将Python Watchdog和Win32com结合在一起,你可以使用Watchdog来监视文件和目录的变化,并在触发特定事件时使用Win32com与Windows应用程序进行交互。例如,你可以在文件被创建或修改时使用Watchdog触发事件,并使用Win32com调用Windows应用程序来处理这些文件。 要使用Python Watchdog和Win32com,首先需要安装这两个库。你可以使用pip来安装它们: ``` pip install watchdog pip install pywin32 ``` 然后,你可以使用Watchdog来编写你的代码来监视文件和目录的变化,并使用Win32com来与Windows应用程序进行交互。你可以参考Watchdog和Win32com的官方文档和示例代码来获得更多的信息和帮助。 请注意,这只是一种概念上的组合,实际实现的具体细节和用途可能因你的具体需求而有所不同。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [poppy:poppy 是一个目录的同步工具](https://download.csdn.net/download/weixin_42109598/19410798)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [[Python实战]python-watchdog 超简单例子【开箱可用】【windows】](https://blog.csdn.net/aaaadong/article/details/125200515)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值