События интерфейса приложения OneNote Com с PythonPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 События интерфейса приложения OneNote Com с Python

Сообщение Anonymous »

Я хотел бы использовать библиотеку Python win32com (часть Pywin32) для получения событий от локального интерфейса приложения OneNote (как задокументировано здесь). Примечание Этот вопрос относится не к более новому онлайн-интерфейсу «Rest» OneNote, а скорее к более старому локальному интерфейсу на рабочем столе. < /P>
Когда я пытаюсь использовать этот простой пример: < /p>
import time, pythoncom, win32com.client as COM

class OneNoteEvents:
def OnHierarchyChange(self, PageID=pythoncom.Empty):
print('Hierarchy has changed!!')

onevt = COM.DispatchWithEvents('OneNote.Application', OneNoteEvents)

while True:
pythoncom.PumpWaitingMessages() # Non-blocking
time.sleep(0.02)
< /code>
Я получаю следующую ошибку (некоторые идентифицирующие элементы пути файла отредактированы): < /p>
Traceback (most recent call last):
File "C:\...\OneNote_event_compact.py", line 7, in
onevt = COM.DispatchWithEvents('OneNote.Application', OneNoteEvents)
File "C:\Users\\AppData\Local\Programs\Python\Python313\Lib\site-packages\win32com\client\__init__.py", line 346, in DispatchWithEvents
events_class.__init__(instance, instance)
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
File "C:\Users\\AppData\Local\Temp\gen_py\3.13\0EA692EE-BB50-4E3C-AEF0-356D91732725x0x1x1.py", line 290, in __init__
cookie=cp.Advise(win32com.server.util.wrap(self, usePolicy=EventHandlerPolicy))
pywintypes.com_error: (-2147467259, 'Unspecified error', None, None)
< /code>
Что я знаю до сих пор: < /p>

Ошибка возникает в коде, сгенерированном Win32com в папке 'gen_py', когда вызов () < /strong>. Иерархия и т. Д. < /li>
Я также могу сделать простой пример события для Excel, который также отлично работает, и печатает сообщения, когда курсор перемещается вокруг листа: < /li>
< /ul>
import time, pythoncom, win32com.client as COM

class ExcelEvents:
def OnSheetSelectionChange(self, sh=None, Target=None):
print(f'Selection Changed {sh.Name} {app.ActiveCell.Address}')

app = COM.DispatchWithEvents("Excel.Application", ExcelEvents)
app.Visible=True
while True: pythoncom.PumpWaitingMessages(); time.sleep(0.05)
< /code>
Проблема кажется специфической для интерфейса событий приложения OneNote, что вызывает неудачу в вызове revise () по причинам, которые я не полностью понимаю. Любые подсказки для обхода или подходов к определению причины будут высоко оценены.

Подробнее здесь: https://stackoverflow.com/questions/797 ... ith-python
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • API MSDN OneNote: переход на никогда ранее не открывавшуюся страницу, не открывая окно приложения OneNote.
    Anonymous » » в форуме C#
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Модуль Python для создания файлов OneNote? [закрыто]
    Anonymous » » в форуме Python
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Невозможно получить данные OneNote с помощью Graph API от Microsoft
    Anonymous » » в форуме Python
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Невозможно получить данные OneNote с помощью Graph API от Microsoft
    Anonymous » » в форуме Python
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Возможность создания надстройки кнопки ленты для OneNote Desktop с пользовательским интерфейсом (C#)
    Anonymous » » в форуме C#
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»