pywin32 построить 219 имеет проблему в том, что он ищет python 3.5 32-разрядная установка в неправильном разделе реестра. Эта проблема исправлена в последующих строках pywin32 - 220 и 221 - те, которые я пробовал, - и они правильно найдут место установки python в реестре. Вы можете увидеть билет pywin32 here.
Если вам нужна сборка 219, вы можете временно переименовать запись в реестре.
Я устанавливаю python для всех пользователей на своем ПК, поэтому записи реестра на моей машине находятся в HKEY_LOCAL_MACHINE
. Если вы устанавливаете python для каждого пользователя, записи реестра будут в HKEY_CURRENT_USER
. Кроме того, мой COM-объект 32-разрядный, поэтому мы используем 32-разрядный питон.
32-разрядные записи реестра python будут расположены по адресу: \SOFTWARE\Wow6432Node\Python\PythonCore
.
64-разрядные записи реестра python будут расположены по адресу: \SOFTWARE\Python\PythonCore
.
В моем случае, у меня было две записи, которые должны быть временно переименованы:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Python\PythonCore\3.5
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Python\PythonCore\3.5-32
Питон место установки находится в InstallPath
ключа, который на моей машине находится по адресу:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Python\PythonCore\3.5-32\InstallPath
В моей папке \PythonCore\3.5
есть ключ \Help\Pythonwin Reference
, который дублируется в папке \PythonCore\3.5-32
, поэтому я думаю, что этот ключ оставлен после предыдущей установки и больше не актуальен. Тем не менее, я не выбрала, чтобы удалить его, и я временно переименовывается как выглядит следующим образом:
От:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Python\PythonCore\3.5
To:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Python\PythonCore\3.5-temp
От:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Python\PythonCore\3.5-32
Для :
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Python\PythonCore\3.5
После завершения установки pywin32 build 219 я вернул ключи обратно к исходным именам.
Уверен, что у меня есть правильная версия (Python26), и я не нашел разные пакеты для 64 или 32 архитектур (у меня 64-разрядный). Поэтому я попытался установить его из исходного кода, как вы предложили, но когда я запустил setup.py install, он дал мне кучу ошибок. – Johanna
Итак, вы были правы, возникла проблема с архитектурой.Я нашел 64-битную версию pywin32, и она отлично работала :) – Johanna
Этот ответ «неверен». Проблема заключается в ключе reg, если python установлен только для пользователя, найдите HKEY_CURRENT_USER \ SOFTWARE \ Python \ PythonCore \ 2.7 вместо HKEY_LOCAL_MACHINE. Убедитесь, что InstallPath и PythonPath установлены правильно, например. InstallPath - это C: \ Python27, PythonPath - это C: \ Python27; C: \ Python27 \ Lib; C: \ Python27 \ DLL. – FastZhong