我尝试用python编写MS应用程序,但从一开始就失败了。
我的具体问题是关于这个错误:
pywintypes.error:(1407年,“CreateWindowEx”,“没有找到Windowclass类”)
使用此代码:
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的文档,并尝试通过这个例子来理解用python翻译C代码的想法。但是我无法理解,因为我找到的C类型的最佳文档不会帮助我只使用示例中的ctype。
发布于 2021-01-04 22:08:46
此错误指示未注册窗口类名字符串。"Root"必须是已注册窗口类的名称。请参阅CreateWindowsEx文档:
lpClassName 类型:LPCTSTR 由以前调用RegisterClass或RegisterClassEx函数创建的以空结尾的字符串或类原子。原子必须在lpClassName的低阶字中;高阶字必须是零.如果lpClassName是字符串,则指定窗口类名。类名可以是在RegisterClassEx,、、RegisterClass、或中注册的任何名称,只要注册该类的模块也是创建窗口的模块。类名也可以是任何预定义的系统类名称。
https://stackoverflow.com/questions/65566751
复制相似问题