web-dev-qa-db-fra.com

erreur d'importation win32api dans Python 2.6

Lors de l'exécution de python26 sous Windows OS (64bits) ..... J'ai des erreurs comme:

import win32api" error in Python 2.6: pywintypes26.dll

ou

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

J'ai fait l'installation msi pour python26 toutes les DLL peuvent être trouvées sous C:\Python26\Lib\site-packages\pywin32_system32

53
Vin.X

Après avoir déplacé/copié pywintypes26.dll et pythoncom26.dll vers c:\Python26\Lib\site-packages\win32 -> Résolvez le problème!

62
Vin.X

J'ai également rencontré un problème lors de l'importation de win32api.

Le script de post-installation de pywin32 a échoué, ce qui devrait copier pythoncom26.dll, pythoncomloader26.dll, et pywintypes26.dll, entre autres. Je l'ai exécuté à la main et mon installation a été corrigée.

python scripts\pywin32_postinstall.py -install
33
Dave Bremer

J'ai rencontré un problème similaire lors de l'installation sous 64 bits Python 3.4.2. J'ai exécuté l'exécutable d'installation pywin32‑219.win ‑ AMD64 ‑ py3.4.exe à partir de http://www.lfd.uci.edu/~gohlke/pythonlibs/ .

Sur le site, il indique clairement:

"Les utilisateurs de Python 3.4 doivent exécuter manuellement python.exe Scripts\pywin32_postinstall.py -install à partir d'une invite de commande élevée. "

ce que je n'ai pas fait la première fois; J'ai installé à partir d'une invite normale en obtenant les commentaires suivants:

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" ... 

Je n'ai lu que la dernière phrase et j'ai commencé à exécuter du code entraînant l'échec du chargement de ces DLL.

Donc, a fait des recherches et a commencé une invite élevée (comment: voir " http://www.sevenforums.com/tutorials/783-elevated-command-Prompt.html ") et a de nouveau exécuté:

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.

Et maintenant, mon code fonctionne bien (en ce qui concerne cette question ... soupir, tant d'autres choses à faire).

9
MZA

Exécutez le programme d'installation en tant qu'administrateur et cela fonctionne:

  • Faites un clic droit sur pywin32-installer.exe
  • Choisissez "Exécuter en tant qu'administrateur"
6
Data Meister

Comme suggéré ci-dessus, le script de post-installation n'est pas exécuté, ce problème peut être constaté lors de l'installation à partir d'une roue (comme je l'ai rencontré)

python scripts\pywin32_postinstall.py -install

Si vous rencontrez ce problème lors de l'installation via des roues, l'installation à partir d'ici peut résoudre le problème ci-dessus.

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

5
JamesD

Je ne sais pas s'il est trop tard ou non pour répondre à cette question. J'ai également rencontré ce problème et j'ai essayé toutes les méthodes ci-dessus, mais aucune d'entre elles n'a fonctionné.
Enfin, j'ai trouvé la raison. Lorsque nous installons pywin32 , nous devons choisir celui qui correspond à la version de python (2.6 , 2.7 , 3.3 , etc.) et le numéro de bit de python (x64 ou x86). Remarquez, il doit correspondre au numéro de bit de python, pas au numéro de bit de PC. Si vous installez x86 python dans un PC x64, vous devez installer un pywin32 avec x86.

1
styshoo

J'installe toujours la distribution Active State Python qui installe les packages win32 pour vous et le fait correctement).

1
David Heffernan

Il semble y avoir un bogue dans le programme d'installation . La solution de contournement recommandée dans le ticket est la même que celle proposée par Dave Bremer.

1
Jason R. Coombs

Si ce qui précède n'a pas résolu le problème, le msvcr100.dll fichier. C'est soit dans votre \System32\ dossier, ou plus probablement dans votre c:\PythonXX\Lib\site-packages\win32\ dossier.

Cela m'a corrigé en vain après des heures de recherche, même s'il semble que l'importation ne soit toujours pas résolue comme il se doit (PyCharm me donne toujours le soulignement ondulé), mais cela fonctionne.

1
Sol

J'ai pu corriger cette situation en supprimant toutes les versions de Python3.4 installées (j'avais oublié de désinstaller 3.4.1 avant d'installer 3.4.2), en supprimant C:\Python34 et après avoir installé Python 3.4.2 pywin32 -219.win32-py34.exe peut être installé et appelé sans problème. La copie des DLL ne devrait donc PAS être nécessaire!

0
MKesper