В дополнение к ответу @modiX, это то, что работает ... НЕ ОСТАВЛЯЙТЕ ЭТО как пустое
today.toLocaleDateString("default", {year: "numeric", month: "2-digit", day: "2-digit"})
Так как это параметры out, не могли бы вы просто сделать следующее?
Framebuffer, XOrigin, YOrigin = display.getFrameBuffer(ScreenId)
Есть несколько хороших ссылок в Программирование Python на Win32 Глава 12 Расширенный Python и COM
И они указывают, что синтаксис должен быть таким, как указано выше. Они также упоминают об использовании MakePy для COM-объектов:
Существует ряд веских причин для использования MakePy: (скопировано из книги)
Интерфейс Python для объектов автоматизации быстрее для объектов, поддерживаемых модулем MakePy.
Любые определенные константы библиотекой типов доступны для программы Python. Мы обсудим константы COM более подробно позже в этой главе.
Гораздо лучшая поддержка расширенных типов параметров, в частности, параметры, объявленные COM как BYREF, могут использоваться только с объектами, поддерживаемыми MakePy. Мы обсудим параметры передачи позже в этой главе.
Используйте ] makepy
модуль, вызывая его следующим образом:
>>> import win32com.client.makepy as makepy
>>> makepy.main()
Откроется окно со списком библиотек типов. Прокрутите до «Библиотеки типов виртуальных ящиков» и выберите ее, затем нажмите «ОК». Модуль Python будет создан в распечатанном месте (обычно % TEMP% \ gen_py \ 2.x \
).
Созданный класс будет автоматически использоваться win32com.client .Dispatch
, но если он вам явно нужен, вы можете получить к нему доступ через функции в win32com.client.