SendMessage模拟鼠标不能点击

def click(hwnd, x, y):
long_position = win32api.MAKELONG(x, y)
win32api.SendMessage(hwnd, win32con.WM_LBUTTONDOWN, win32con.MK_LBUTTON, long_position)
time.sleep(0.5)
win32api.SendMessage(hwnd, win32con.WM_LBUTTONUP, 0, long_position)

运行的时候鼠标在窗口外没有反应,鼠标在窗口里面不会点击坐标,而是鼠标位置在哪里点击哪里。

然后加了WM_MOUSEMOVE,可以点击坐标了。
但是还是要把鼠标放在窗口里面,放外面还是没反应,这是什么情况?