Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 尝试将Win32 UI与pywin32一起使用:动态链接库(DLL)初始化例程失败_Python_Windows_Dll_Importerror_Pywin32 - Fatal编程技术网

Python 尝试将Win32 UI与pywin32一起使用:动态链接库(DLL)初始化例程失败

Python 尝试将Win32 UI与pywin32一起使用:动态链接库(DLL)初始化例程失败,python,windows,dll,importerror,pywin32,Python,Windows,Dll,Importerror,Pywin32,我正在尝试使用pywin32中的Win32 UI模块(是的,我有正确的版本)。 我的win32gui模块工作正常,但ui模块给出了错误信息。 我已经试过: 重新安装python, 添加PYTHON_PATH太多系统变量, 运行安装后的pywin32脚本, 剩下的时间,我有点力不从心了 Python版本:3.9(64位) Pywin32版本:Pywin32-228.win-amd64-py3.9(是我不知道如何找到的.exe文件名) 只是想澄清一下我唯一的代码是: 导入win32ui (这是我的第

我正在尝试使用pywin32中的Win32 UI模块(是的,我有正确的版本)。 我的win32gui模块工作正常,但ui模块给出了错误信息。 我已经试过: 重新安装python, 添加PYTHON_PATH太多系统变量, 运行安装后的pywin32脚本, 剩下的时间,我有点力不从心了

Python版本:3.9(64位) Pywin32版本:Pywin32-228.win-amd64-py3.9(是我不知道如何找到的.exe文件名) 只是想澄清一下我唯一的代码是:

导入win32ui

(这是我的第一个问题,希望我做得对)

更新 将(以下)修复程序(以及更多修复程序)应用于原始源代码,构建它们,并将.whls上传到
但是,由于这个bug有点“破坏交易”(v228发布至今已有4个多月),我预计v229很快就会出现(在接下来的几天左右)

有关如何安装.whls的详细信息,请查看(的开头)中的安装步骤部分



它可以在以下设备上不断复制:

  • Python 3.964位和32位(适用于旧版本)
  • PyWin32 228(及更早版本)
[cfati@CFATI-5510-0:e:\Work\Dev\GitHub\CristiFati\pywin32\src]>sopr.bat
***设置较短的提示,以便粘贴到StackOverflow(或其他)页面时更适合***
[提示]>“e:\Work\Dev\VEnvs\py\u pc064\u 03.09.00\u test0\Scripts\python.exe”
win32上的Python 3.9.0(tags/v3.9.0:9cf6752,2020年10月5日,15:34:40)[MSC v.1927 64位(AMD64)]
有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。
>>>导入win32ui
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“c:\Install\pc064\Python\Python\03.09.00\Lib\ctypes\\ uuuu init\ uuuu.py”,第374行,在\uuu init中__
self.\u handle=\u dlopen(self.\u名称,模式)
OSError:[WinError 1114]动态链接库(DLL)初始化例程失败
>>>导入win32api
我为win32ui做了一些调试(创建了一个vstudio2015解决方案(有两个项目:python3.9和python3.8),结果发现这是一个访问冲突(segfault)
最好的部分是,它发生在主语之前

我可以将调试器放入的最后一行是:

PyCCtrlView\u Type PyCRichEditView::Type(“PyCRichEditView”、&PyCCtrlView::Type、&PyCRichEditCtrl::Type、,
运行时类(CRichEditView),sizeof(PycriceditView),
PYOBJ_偏移量(PyCRichEditView),PyCRichEditView_方法,
获取PY向量(PyCRichEditView));
这是一个静态成员。因为第二个和第三个参数也是静态成员(没有注意到它们是指针这一事实),所以我认为是的,我追逐了一些幽灵

不管怎样,今天我注意到了(从那里我知道它是在寻址)

应用修补程序修复了问题:

[prompt]>“e:\Work\Dev\VEnvs\py\u pc064\u 03.09.00\u test0\Scripts\python.exe”
win32上的Python 3.9.0(tags/v3.9.0:9cf6752,2020年10月5日,15:34:40)[MSC v.1927 64位(AMD64)]
有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。
>>>导入win32ui
>>>导入win32api

嘿,托维纳,欢迎来到堆栈溢出。如果可能的话,请显示脚本的一些输出,也许是再现失败的脚本的最小示例。想象一下,你是一个乐于助人的人,而不是坐在你的电脑前。帮助他/她帮助你。(但也要保持小而准确)@studioj我的脚本是simpely import win32ui,导入win32ui时出错:importorror:DLL加载失败:动态链接库(DLL)初始化例程失败。快速谷歌将我带到这里,你已经尝试过了吗?=>还可以编辑文章,添加python版本和pywin32version@studioj是的,我试过用pip安装它,还说设置了正确的版本(只是为了确保我也试过并下载了.exe安装程序,而且Win32 UI仍然存在错误),你试过pywin32 225版本吗?pip install pywin32==225I无法解决此问题(因为我不知道如何构建该修补程序),但您认为这是正确的解决方案,因此感谢(我将等待更新),正如我在开始时提到的,我构建了v228源代码+此修补程序+2个其他修复程序,这些修复程序在该版本发布后在主分支中推送。您可以在本地下载您需要的版本(最有可能是64位版本),并通过PIP安装。如何通过PIP安装它,因为我看不到该修补程序之后的任何版本,并且构建过程不起作用,因为我需要vscode的构建工具(而且我似乎找不到它需要的版本14.2)我添加了对另一个答案的引用,在这里我简要地解释了如何安装.whl。如果您遇到任何问题,请告诉我。@CrisitiFati我刚刚运行了安装,而且似乎可以正常工作,谢谢(我确实测试了模块,现在可以正常工作了)。你做的建筑非常方便,因为我自己无法建造。