Найти - Пользователи
Полная версия: Ошибка при установке pywinauto
Начало » Python для новичков » Ошибка при установке pywinauto
1
koluna
Всем привет!

Устанавливаю pywinauto 0.4.0 (Windows 7 x64, Python 2.7.8 x64).
При запуске скрипта установки получаю исключение:
C:\temp\pywinauto-0.4.0>python setup.py install
Traceback (most recent call last):
  File "setup.py", line 50, in <module>
    import pywinauto
  File "C:\temp\pywinauto-0.4.0\pywinauto\__init__.py", line 28, in <module>
    import findwindows
  File "C:\temp\pywinauto-0.4.0\pywinauto\findwindows.py", line 32, in <module>
    import win32structures
  File "C:\temp\pywinauto-0.4.0\pywinauto\win32structures.py", line 458, in <module>
    assert sizeof(MENUITEMINFOW) == 44, sizeof(MENUITEMINFOW)
AssertionError: 48

Почему?
Еще так и не понял, нужно ли устанавливать SendKeys или нет? В мануале написано, что требуется для релизов до 0.3.9.
Kasta_neda
SendKeys я не помню чтоб специально устанавливал, и без него работало.
koluna
Kasta_neda
SendKeys я не помню чтоб специально устанавливал, и без него работало.

На XP x32 + Python x32 установилось без проблем.
Но после установки инсталлятор сообщил: “The following module has to be installed before running pywinauto… SendKeys”.
SendKeys не ставил, вроде, работает…

На семерке установить пока не удалось из-за выше указанной ошибки
Kasta_neda
попробуйте установите 0.4.1
или 0.4.2
https://code.google.com/p/pythonxy/downloads/detail?name=pywinauto-0.4.2-1_py27.exe&can=2&q=
koluna
Kasta_neda
попробуйте установите 0.4.1или 0.4.2https://code.google.com/p/pythonxy/downloads/detail?name=pywinauto-0.4.2-1_py27.exe&can=2&q=

Эта версия установилась (т. к. exe-шный инсталлятор).
Но при попытке запустить простейший скрипт получаю тоже самое исключение

Смотрим в код модуля (информация в выводе исключения).
В файле win32structures.py из комплекта модуля захардкожены размеры windows-структур при проверке:
assert sizeof(MENUITEMINFOW) == 44, sizeof(MENUITEMINFOW)
У меня получается размер структуры 48.
Не может ли быть дело в ctypes? Я ее не ставил, использовал то, что было с питоном…
Kasta_neda
поэксперементируйте, может дело в 64 конечно, на 32 нормально все
Kasta_neda
у меня установлен pythonxy , с ним идет много модулей
koluna
Kasta_neda
поэксперементируйте, может дело в 64 конечно, на 32 нормально все

Убрал Питон x64, поставил Питон x32.
Все работает!
Но мне нужен Питон x64…
vvryabov
Это запросто. Портированная на x64 версия уже есть: https://github.com/vasily-v-ryabov/pywinauto-64
На PyPI пока нету. Думаю, скоро и там организуем.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB