在Python 2.6中导入win32api错误

时间:2011-08-30 03:35:46

标签: python pywin32

在Windows OS(64位)下运行python26时..... 我有错误:

import win32api" error in Python 2.6: pywintypes26.dll

pythoncom26.dll missing
ImportError: DLL load failed: The specified module could not be found.

我已经完成了python26的msi安装 所有dll都可以在C:\ Python26 \ Lib \ site-packages \ pywin32_system32

下找到

11 个答案:

答案 0 :(得分:62)

将pywintypes26.dll和pythoncom26.dll移动/复制到c:\ Python26 \ Lib \ site-packages \ win32 - >解决问题!

答案 1 :(得分:33)

我也遇到了导入win32api的问题。

pywin32的安装后脚本失败,应该复制pythoncom26.dllpythoncomloader26.dllpywintypes26.dll等。我手动运行它,我的安装得到了修复。

python scripts\pywin32_postinstall.py -install

答案 2 :(得分:9)

在64位Python 3.4.2下安装时遇到了类似的问题。我从http://www.lfd.uci.edu/~gohlke/pythonlibs/运行了安装可执行文件pywin32-219.win-amd64-py3.4.exe。

在网站上明确指出:

“Python 3.4用户必须从提升的命令提示符处手动运行python.exe Scripts\pywin32_postinstall.py -install。”

我没有第一次做;我从正常提示中安装了以下反馈:

c:\python34>python.exe Scripts\pywin32_postinstall.py -install
Copied pythoncom34.dll to C:\Python34\pythoncom34.dll
Copied pywintypes34.dll to C:\Python34\pywintypes34.dll
You do not have the permissions to install COM objects.
The sample COM objects were not registered.
etc.etc.
Finishing with "The pywin32 extensions were succesfully installed" ... 

我只读了最后一句,我开始运行一些代码导致这些dll加载失败。

所以,做了一些研究,并开始提升提示(如何:见“http://www.sevenforums.com/tutorials/783-elevated-command-prompt.html”)并再次运行:

c:\python34>python.exe Scripts\pywin32_postinstall.py -install
Copied pythoncom34.dll to C:\Windows\system32\pythoncom34.dll
Copied pywintypes34.dll to C:\Windows\system32\pywintypes34.dll
Registered: Python.Interpreter
Registered: Python.Dictionary
Registered: Python
-> Software\Python\PythonCore\3.4\Help[None]=None
-> Software\Python\PythonCore\3.4\Help\Pythonwin Reference[None]='C:\\Python34\\Lib\\site-packages\\PyWin32.chm'
Pythonwin has been registered in context menu
Shortcut for Pythonwin created
Shortcut to documentation created
The pywin32 extensions were successfully installed.

现在我的代码运行愉快(就此事而言......叹息,还有其他许多事情要做)。

答案 3 :(得分:6)

以管理员身份运行安装程序,它可以正常运行:

  • 右键单击pywin32-installer.exe
  • 选择"以管理员身份运行"

答案 4 :(得分:5)

如上所述,安装后脚本未运行,从车轮安装时可以看到此问题(我遇到过)

python scripts\pywin32_postinstall.py -install

如果在通过车轮安装时发现您遇到此问题,则从此处安装可以解决上述问题。

https://pypi.python.org/pypi/pypiwin32

答案 5 :(得分:1)

我总是安装Active State Python发行版,它会为你安装win32软件包并使其正确。

答案 6 :(得分:1)

似乎有bug in the installer。票证中推荐的解决方法与Dave Bremer提出的相同。

答案 7 :(得分:1)

如果上述方法无法解决问题,那么您仍然缺少msvcr100.dll文件。它位于\System32\文件夹中,或者更可能位于c:\PythonXX\Lib\site-packages\win32\文件夹中。

在经过数小时的搜索后无法获得它的解决方案,即使看起来导入仍然没有得到解决(PyCharm仍然给我一个波浪形的下划线),但它确实有效。

答案 8 :(得分:1)

我不知道是否为时已晚或无法回答这个问题。我也遇到了这个问题,我尝试了上面的所有方法,但都没有奏效 最后,我找到了原因。当我们安装pywin32时,我们必须选择适合python的版本(2.6,2.7,3.3等)和python的位数(x64或x86)。注意,它必须符合python的位数,而不是PC的位数。如果在x64 PC中安装x86 python,则必须安装带有x86的pywin32。

答案 9 :(得分:0)

我可以通过删除所有已安装的Python3.4版本(在安装3.4.2之前忘记卸载3.4.1),删除C:\ Python34并在安装Python 3.4.2 pywin32-219.win32-py34之后解决这种情况可以安装和调用.exe而不会出现问题。 因此,不需要复制DLL!

答案 10 :(得分:0)

首先,我使用pip在anaconda环境中安装pywin32,这就是为什么无论我做什么都失败了。经过反复试验,我发现 conda install pywin32  是在anaconda软件包管理器中安装pywin32的正确方法。