Пожалуйста, помогите и объясните что не так. Нужно вызвать API функцию, вот так получается:
import ctypes as ct from ctypes import wintypes as wt prototype = ct.WINFUNCTYPE(ct.c_bool, ct.POINTER(wt.POINT)) GetCursorPos = prototype(("GetCursorPos", ct.windll.user32)) point = wt.POINT() result = GetCursorPos(ct.byref(point)) if result: print(point.x, point.y)
А вот если я пытаюсь описать параметры, ничего не получается:
import ctypes as ct from ctypes import wintypes as wt prototype = ct.WINFUNCTYPE(ct.c_bool, ct.POINTER(wt.POINT)) paramflags = (2, "lppoint"), GetCursorPos = prototype(("GetCursorPos", ct.windll.user32), paramflags) point = wt.POINT() result = GetCursorPos(lppoint=ct.POINTER(point)) # must be a ctypes type if result: print(point.x, point.y)
Что я делаю не так, и как это поправить?