18

我刚刚尝试将我的 anaconda 环境更新到最新版本,但现在收到错误消息。我以管理员身份打开了 conda 环境,发出的命令是:

conda update conda
conda update anaconda

第一个命令完成得很好。第二个命令产生错误:

pythonw.exe - Entry Point Not Found

The procedure entry point ?PyWinObject_FromULARGE_INTEGER@@YAPEAU_object@@AEAT_ULARGE_INTEGER@@@Z could not be located in the dynamic link library c:\ProgramData\Anaconda3\pythoncom37.dll

错误信息

我找到了对此类错误的引用,该错误需要我libssl-1-1-x64.dllAnaconda3/Library/bin中复制一个文件和来自Anaconda3/DLLs的文件。

如何在 conda 环境中安装库时修复未找到入口点

但是,我在源位置没有那个文件。有没有我可以发出的命令来再次下载这个文件,或者我可以在网上安全地下载那个文件?

4

7 回答 7

19

更新 conda 时出现同样的错误。

但是,该文件pythoncom37.dll位于C:\Windows\System32. 原来该文件是之前从 Python 3.7.5 更新到 Python 3.8 的遗留文件,即与 conda 本身的安装无关。我的猜测是 conda 在 Python 3.7 中注册,然后无法使用来自不兼容安装的 dll。

pythoncom37.dll解决方案:pywintypes37C:\Windows\System32.

于 2020-02-10T23:03:54.663 回答
5

在使用带有 sublime text3 的 anaconda python3 更新 tensorflow 和其他软件包时,我遇到了同样的问题。

为了解决这个问题,我删除了错误窗口中显示的目录中的所有 pythoncom37.dll。

从其他目录替换文件不起作用。

重新安装 conda、升级 conda、重新安装 sublimetext3 或 tensorflow 也无济于事。

于 2020-01-15T20:06:35.860 回答
3

鉴于似乎有很多答案和一些适用于具有不同设置、python 版本和环境的不同人的工作,因此快速总结了要尝试的事情。

  1. 转到[envpath]\Scripts并运行py pywin32_postinstall.py -install以更新 pywin32 依赖项
  2. 将找到的两个文件复制[anacondaPath]\Lib\site-packages\pywin32_system32C:\Windows\System32
  3. 使用 conda 而不是 pip 安装 pywin32conda install pywin32
  4. 强制 pywin32 到特定版本(例如 Python 3.7 为 224)pip install --upgrade pywin32==224
  5. 添加\Lib\site-packages\pywin32_system32到您的路径环境变量
  6. 卸载 pypiwin32 并安装 pywin32。pip uninstallpip install pywin32
  7. 下载最新的 Visual C++ 版本并重新启动计算机 ( https://support.microsoft.com/en-us/topic/the-latest-supported-visual-c-downloads-2647da03-1eea-4433-9aff-95f26a218cc0 )
  8. 如果可能,出于您的目的降级到例如 Python 3.6

如果其中任何一个有效,评论您的案例中的哪一个可能有助于理解什么时候有效:)

项目清单

于 2021-09-06T14:35:00.207 回答
1

对不起 - 线索在错误信息中。关于如何修复入口点的条目引导我朝着正确的方向前进。但这是我需要复制的 pythoncom37.dll 文件。

这就是你盲目遵循指示所得到的。

非常感谢。

于 2020-01-08T11:50:05.143 回答
1

当我遇到此错误时,它没有显示入口点的路径。

我尝试重新安装 anaconda 并没有解决问题。

我通过做找到了路径pip install win32,它说明了正在使用的库的路径。原来它正在连接到损坏的漫游配置文件版本,因此重命名漫游配置文件文件夹(到 _OLD)解决了这个问题。

于 2020-02-25T10:59:15.143 回答
1

遇到与上图相同的问题,使用这些步骤解决了它。

  • pythoncom37.dll从相关环境中删除文件
  • 删除了文件C:\tools\Anaconda3\Library\bin\pythoncom37.dll
  • conda install --force-reinstall nb_conda_kernels ipykernel
  • 每个环境重复。

请注意,这还将升级活动环境中的所有环境包。

于 2020-03-10T07:29:12.837 回答
1

我有同样的问题。但是我的虚拟环境一切正常,所以我有一个解决方法:

  1. 使用所有标准 anaconda 包创建一个名为“env_base”的新虚拟环境

conda create -n env_base anaconda python=3.7

  1. 激活它

conda activate env_base

  1. 创建内核

conda install -c anaconda ipykernel

python -m ipykernel install --user --name=env_base

然后将此虚拟环境用作基础 jupyter notebook。你可以用这个链接替换你的启动快捷方式,它与使用基本包的实际 Jupyter notebook 一样好。

它不能解决问题,但可以有效地回避它。

于 2020-12-17T09:36:37.470 回答