【发布时间】:2021-01-04 17:07:28
【问题描述】:
我尝试开始使用 python 编写 MS 应用程序并从一开始就失败了。
我的具体问题是关于这个错误:
pywintypes.error: (1407, 'CreateWindowEx', 'Windowclass was not found.')
使用此代码:
import ctypes
import win32api
import win32con as con
import win32gui as gui
class Window(object):
def __init__(self):
self.hwnd = gui.CreateWindowEx(0,
"Root",
"Python Window",
con.WS_OVERLAPPEDWINDOW,
con.CW_USEDEFAULT,
con.CW_USEDEFAULT,
con.CW_USEDEFAULT,
con.CW_USEDEFAULT,
0,
0,
0,
None)
gui.ShowWindow(self.hwnd, con.SW_SHOWDEFAULT)
Window()
昨天我读了一些关于注册窗口的东西,但我找不到了。我认为有问题。有人可以帮帮我吗?
另外,如果有人读到这个问题并能给我一些一般性的提示,我会很高兴。 为了描述我目前的情况,我尝试关注 MS 的 documentation,并尝试通过 this example 了解使用 python 翻译 C 代码的想法。但我无法关注,因为我发现的 best documentation of ctypes 不会像示例中那样帮助我使用 ctypes only。
【问题讨论】:
-
感谢您的提示。我会花时间来了解其中的一些。
-
仅供参考,我为您发布的 linked example 添加了一个更正的 ctypes-only 答案,适用于 Python 3 32 位和 64 位。
-
今天晚些时候我会去看看。谢谢!
标签: python python-3.x winapi ctypes pywin32