开发者社区> 问答> 正文

python调用windows api GetPixel出错? 400 报错

python调用windows api GetPixel出错? 400 报错

#这行代码出错 GetPixel(hwnd, 0, 0) #出错提示 pywintypes.error: (0, 'GetPixel', 'No error message is available')



其他的win api调用都正常。。

展开
收起
爱吃鱼的程序员 2020-06-03 13:54:50 1608 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB
        hwnd = win32gui.GetDesktopWindow()
        print hwnd
        dc = win32gui.GetWindowDC(hwnd)
        print dc
        colour = win32gui.GetPixel(dc, 100, 100)
        print colour

    没有问题

    ######我也试了,是没问题,应该是我获取的那个窗口有问题###### GetPixel第一个参数应该是HDC类型,不应该是HWND######

    引用来自“sToa”的答案

    GetPixel第一个参数应该是HDC类型,不应该是HWND

    我的代码是这样的

    hwnd = FindWindow(None, "某个窗口标题")
    GetPixel(hwnd, 0, 0)
    FindWindow函数文档说FindWindow返回 PyHANDLE类型

    GetPixel第一个参数亦接受PyHANDLE类型

    ######

    引用来自“走过海”的答案

    引用来自“sToa”的答案

    GetPixel第一个参数应该是HDC类型,不应该是HWND

    我的代码是这样的

    hwnd = FindWindow(None, "某个窗口标题")
    GetPixel(hwnd, 0, 0)
    FindWindow函数文档说FindWindow返回 PyHANDLE类型

    GetPixel第一个参数亦接受PyHANDLE类型

    不对,这个是直接包装的windows api,你看下

    http://stackoverflow.com/questions/19623135/pywin32-win32gui-getpixel-fails-predictably-near-10-000th-call

    http://msdn.microsoft.com/en-us/library/windows/desktop/dd144909(v=vs.85).aspx

    而且win32gui__GetPixel第一个参数也是要个hdc http://docs.activestate.com/activepython/2.5/pywin32/win32gui__GetPixel_meth.html

    ######

    引用来自“sToa”的答案

    引用来自“走过海”的答案

    引用来自“sToa”的答案

    GetPixel第一个参数应该是HDC类型,不应该是HWND

    我的代码是这样的

    hwnd = FindWindow(None, "某个窗口标题")
    GetPixel(hwnd, 0, 0)
    FindWindow函数文档说FindWindow返回 PyHANDLE类型

    GetPixel第一个参数亦接受PyHANDLE类型

    不对,这个是直接包装的windows api,你看下

    http://stackoverflow.com/questions/19623135/pywin32-win32gui-getpixel-fails-predictably-near-10-000th-call

    http://msdn.microsoft.com/en-us/library/windows/desktop/dd144909(v=vs.85).aspx

    而且win32gui__GetPixel第一个参数也是要个hdc http://docs.activestate.com/activepython/2.5/pywin32/win32gui__GetPixel_meth.html

    我获取了窗口DC也失败了

    hdc = GetWindowDC(hwnd)
    GetPixel(hdc, 0, 0)



    还是一样的错误提示。。

    2020-06-03 16:40:49
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Boot2.0实战Redis分布式缓存 立即下载
CUDA MATH API 立即下载
API PLAYBOOK 立即下载