Importerror dll load failed 1 не является приложением win32
У меня ситуация очень похожа на ситуацию в ImportError: загрузка DLL не удалась:% 1 не является допустимым приложением Win32, но ответ там не работает для меня.
Мой код Python говорит:
Но эта строка выдает ошибку, указанную в заголовке этого вопроса.
У меня установлен OpenCV в C:\lib\opencv на этой 64-разрядной машине. Я использую 64-битный Python.
Моя переменная PYTHONPATH: PYTHONPATH=C:\lib\opencv\build\python\2.7 . Эта папка содержит cv2.pyd и все.
Моя переменная PATH: Path=%OPENCV_DIR%\bin;. Эта папка содержит 39 DLL файлов, таких как opencv_core246d.dll .
OPENCV_DIR имеет следующее значение: OPENCV_DIR=C:\lib\opencv\build\x64\vc11 .
Решение в ImportError: загрузка DLL не удалась:% 1 не является допустимым приложением Win32 говорит, чтобы добавить "новый путь двоичных файлов opencv ( C:\opencv\build\bin\Release ) к Переменная среды Windows PATH". Но, как показано выше, у меня уже есть папка с двоичными файлами OpenCV ( C:\lib\opencv\build\x64\vc11\bin ) в моем PATH. И моя установка OpenCV не имеет каких-либо папок Release (кроме пустого в build/java).
Любые идеи относительно того, что происходит не так? Могу ли я сказать Python для подробного отслеживания процесса загрузки? То, что ищет DLL?
ОТВЕТЫ
Ответ 1
здесь вы можете найти любые python libs
Ответ 2
Пожалуйста, проверьте, является ли используемая версия python 64-разрядной. Если нет, это может быть проблемой. Вы использовали бы 32-битную версию python и установили 64-битные двоичные файлы для библиотеки OPENCV.
Ответ 3
Вау, я нашел еще один случай для этой проблемы. Ничего из этого не произошло. В конце концов я использовал способность python для того, чтобы заглянуть в то, что было загружено. Для python 2.7 это означает:
Это оказалось совершенно неожиданным "cv2.pyd" файлом в каталоге DLL Anaconda, который не был затронут несколькими попытками удаления/установки. Сначала Python смотрел туда и не нашел моей хорошей установки. Я удалил этот файл cv2.pyd и снова попробовал imp.find_module ( "cv2" ), и python сразу же нашел нужный файл, а cv2 начал работать.
Итак, если ни одно из других решений не работает для вас, убедитесь, что вы используете интроспекцию python, чтобы узнать, что пытается загрузить файл python.
Ответ 4
В моем случае у меня 64-битный python, и это был неправильный вариант lxml - я тоже должен был использовать версию x64. Я решил это, загрузив здесь 64-разрядную версию lxml:
Это был самый простой ответ на неприятную проблему.
Ответ 5
У меня просто была эта проблема, она поворачивается, потому что я использовал x64-версию файла opencv. Пробовал x86, и он работал.
Ответ 6
Я скопировал cv2.pyd файл из папки /opencv/build/python/2.7/x86 вместо папки /x64 в C:/Python27/Lib/site-packeges . Я следил за инструкциями здесь.
Ответ 7
Для меня проблема заключалась в том, что я использовал разные версии Python в одном проекте Eclipse. Моя настройка не соответствовала параметрам Project Properties и Run Configuration Python.
В Project > Properties > PyDev у меня установлен Interpreter на Python2.7.11.
В Run Configurations > Interpreter я использовал интерпретатор по умолчанию. Изменение его на Python 2.7.11 устранило проблему.
Ответ 8
Если ваша системная система (CMake в моем случае) копирует файл с <name>.dll до <name>.pyd , вы получите эту ошибку, если исходный файл не был фактически dll. В моем случае создание разделяемых библиотек было отключено, поэтому основной файл был фактически *.lib .
Я обнаружил эту ошибку, загрузив файл pyd в DependencyWalker и обнаружив, что он недействителен.
Ответ 9
У меня была та же проблема. Вот что я сделал:
Я загрузил файл колеса pywin32 из здесь, затем
Я удалил модуль pywin32. Для удаления выполните следующую команду в командной строке.
pip uninstall pywin32
Затем я переустановил pywin32. Чтобы установить его, откройте командную строку в том же каталоге, где находится файл колеса pywin32. Затем выполните следующую команду.
pip install <Name of the wheel file with extension> Файл колеса будет выглядеть следующим образом: piwin32-XXX-cpXX-none-win32.whl
Он разрешает проблему для меня. Вы также можете попробовать. Надеюсь, что это сработает и для вас.
Ответ 10
У меня возникла такая же проблема, когда я удалил и переустановил другую версию 2.7.x Python в своей системе с помощью 32-разрядного установщика Windows. Я получил ту же ошибку в большинстве моих операторов импорта. Я удалил недавно установленный Python и загрузил 64-разрядный установщик Windows и снова установил Python, и он сработал. Надеюсь, это поможет вам.
Ответ 11
Сначала я скопировал cv2.pyd от /opencv/build/python/2.7/x86 до C:/Python27/Lib/site-packeges . Ошибка была
"RuntimeError: модуль скомпилирован против API версии 9, но эта версия numpy равна 7"
Затем я установил numpy-1.8.0-win32-superpack-python2.7.exe , а opencv отлично работает.
Ответ 12
Вы можете установить opencv из официальный или неофициальный.
Обратитесь к этому вопросу и этот вопрос, если вы используете Anaconda .
Ответ 13
- Пожалуйста, убедитесь, что вы установили версию python 2.7.12 или ниже, иначе вы получите эту ошибку.
- Убедитесь, что клиент Oracle установлен на 64 бита, если OS 64 бит.
- Убедитесь, что компилятор Microsoft Visual С++ для Python 2.7 равен 64 для бит для 64-разрядных ОС или 32 бит для 32 бит. Примечание: - Если ур ОС 64-битный, установите весь пакет из 64 бит или если Os 32-битный 32-разрядный пакет установки.
Ответ 14
Я нашел решение, возможно, вы можете попытаться использовать окно cmd, а не окно подсказки anaconda, чтобы начать первый скрининг-тест.
Тем не менее, все, что я бегу, это 64 бит. Я нахожусь на win7 64 бит, у меня есть winpython 2.7.3.3, распределение в 64 бита, и я скомпилировал opencv в 64 бита с предоставленной инструкцией здесь и поместил dll cv2.pyd в папку lib / site-packages на python.
К сожалению, предложение использовать 32-битную версию Python больше не работает для меня, так как мне приходится обрабатывать массивы слишком большие для 32-битных.
Единственное, чего не хватало, это добавить новый путь двоичных файлов opencv (C: \ opencv \ build \ bin \ Release) в переменную среды Windows PATH, перезапустить python.
Кажется, теперь все работает нормально!
Эта проблема была решена путем добавления пути двоичных файлов opencv к переменной среды Windows PATH (например, на моем компьютере этот путь: C: \ opencv \ build \ bin \ Release).
Вы можете попробовать установить 32-битную версию opencv
Или вам нужно пересобрать модуль cv2 для win 64bit.
Все, что вам нужно сделать, это скопировать файл cv2.pyd из папки x86 (например, C: \ opencv \ build \ python \ 2.7 \ x86 \ ) в C: \ Python27 \ Lib \ site-packages \ , а не из папки x64.
Надеюсь, это вам поможет.
Эта ошибка может также появиться, когда версии Python смешаны:
Например, если какая-либо загружаемая DLL была скомпилирована с использованием python 2.7.16, и вы пытаетесь импортировать с python 2.7.15, эта ошибка ImportError: DLL load failed: %1 is not a valid Win32 application. выдается.
По крайней мере, это то, что я обнаружил в моем случае.
Я просто нажал на это, и проблема заключалась в том, что пакет был когда-то установлен в каталоге пакетов для каждого пользователя. (В Windows.) Aka% AppData% \ Python. Поэтому Python сначала искал там, находил старую 32-битную версию файла .pyd и терпел неудачу с указанной ошибкой. К сожалению, pip uninstall само по себе было недостаточно для очистки, и в настоящее время pip 10.0.1, похоже, не имеет параметра --user для удаления, только для установки.
Tl; dr Удаление старого .pyd из% AppData% \ python \ python27 \ site-packages решило эту проблему для меня.
Когда у меня была эта ошибка, она исчезла после того, как мой компьютер вышел из строя и перезагрузился. Попробуйте закрыть и снова открыть IDE, если это не сработает, попробуйте перезагрузить компьютер. Я только что установил библиотеки, не перезапуская pycharm, когда получил эту ошибку.
Никогда не закрывайте PyCharm первым, чтобы протестировать, потому что мой взорванный компьютер продолжает зависать случайным образом . работая над этим, но это по крайней мере решило эту проблему . маленькие победы .. :).
однако все, что я запускаю, - это 64 бита. Я на Win7 64 бит, у меня есть winpython 2.7.3.3, распределение 64 бит, и я скомпилировал opencv в 64 битах с предоставленной инструкцией здесь и разместил cv2.PYD dll в папке Lib/site-packages python.
к сожалению, предложение использовать 32-битную версию python больше не работает для меня, поскольку мне приходится обрабатывать массивы numpy слишком большие для 32 бит.
единственное, чего не хватало, это добавить новый путь к двоичным файлам opencv (C:opencvbuildbinRelease) для переменной среды Windows PATH перезапустите python.
теперь все работает нормально!
эта проблема была решена путем добавления пути двоичных файлов opencv к переменной среды PATH Windows (например , на моем компьютере этот путь: C:\opencv\build\bin\Release).
вы можете попробовать установить 32-битную версию opencv
или вам нужно перестроить модуль cv2 для win 64bit.
все, что вам нужно сделать, это скопировать cv2.файл pyd из папки x86 (C:\opencv\build\python\2.7\x86\ к примеру)C:\Python27\Lib\site-packages\ , а не из папки x64.
надеюсь, что поможет вам.
когда у меня была эта ошибка, она ушла после того, как мой компьютер разбился и перезапустился. Попробуйте закрыть и снова открыть IDE, если это не сработает, попробуйте перезагрузить компьютер. Я только что установил библиотеки в этот момент без перезапуска pycharm, когда я получил эту ошибку.
никогда не закрывал PyCharm сначала, чтобы проверить, потому что мой проклятый компьютер продолжает сбой случайным образом. работаю над этим, но это, по крайней мере, решило эту проблему.. маленькая победа.. :).
Я просто нажал на это, и проблема заключалась в том, что пакет в какой-то момент был установлен в каталоге пакетов для каждого пользователя. (в Windows.) aka %AppData%\Python. Поэтому Python сначала искал там, находя старую 32-битную версию.pyd-файл и сбой с указанной ошибкой. К сожалению, pip uninstall сам по себе не был достаточно, чтобы очистить это, и в это время pip 10.0.1, похоже, не имеет параметра --user для удаления, только для установки.
tl; dr удаление старого .pyd из %AppData%\python\python27\site-packages решил эту проблему для меня.
Сегодня хочу рассказать о распространённой проблеме, возникающей у пользователей с операционной системой Windows: Программа не является приложением Win32.
Что такое Win32 и что значит «Не является приложением»
Если у вас возникла ошибка подобного рода, то не стоит пугаться, а нужно сразу же пробовать решить проблему. Начнем с того, что появляется она по разным причинам. Допустим, что у нас есть Windows 8 или Windows 7 64-битная, все равно, такая система будет поддерживать приложения, которые рассчитаны на 32-х битные системы. А вот если программа не соответствует нужной архитектуре, то тут уже проблема.
Программа могла быть создана в другой ОС, например, в Linux, и как раз для нее предназначена, либо же, есть нехватка необходимых файлов, а также, эти самые файлы повреждены. Также, немаловажную роль могут играть и вирусы, стоит проверить компьютер антивирусом.
Программа не только может быть предназначена для другой операционной системы, но и являться мусором и даже вирусом. Но такое можно подхватить только на непроверенных источниках. Всегда перед скачиванием смотрите на комментарии, дизайн сайта, его предназначение. Если источник безопасный, то подозрений вызывать не будет.
Для запуска приложений, не предназначенных для Windows, можно использовать эмуляторы, создающие виртуальную среду определенной ОС, будь это MacOS или Android.
Есть еще виртуальные машины, например, VirtualBox, позволяющие установить любую операционную систему внутри песочницы. Грубо говоря, вы можете из-под Windows пользоваться другими системами без последствий.
Если вы успешно распаковали программу и запускаете установщик, и появляется данная ошибка, то стоит попробовать скачать ее из другого источника. Если вы ее успешно установили, но при запуске возникает ошибка, то удалите ее, а потом установите заново. Банальные советы, но могут помочь, так что, начинаем с самого простого.
Если снова ничего не помогло, то попробуйте найти эту программу для той ОС, которая у вас стоит. Обязательно смотрите в описании программы, какие ОС она поддерживает. А еще ознакомьтесь с отзывами, если таковые имеются.
Запуск в режиме совместимости на Windows 10
Можно попробовать запустить программу в режиме совместимости, для этого нажмите по значку приложения ПКМ и выберите «Свойства», потом перейдите во вкладку «Совместимость» и выберите «Запускать программу в режиме совместимости» и выберите из списка, например, более раннюю ОС.
Отсутствуют компоненты Net Framework, Microsoft Visual C++
Чтобы узнать, какие версии Net Framework уже установлены в системе Widows нужно открыть панель управления, затем перейти в раздел «Программы и компоненты». Далее перейдем по ссылке слева «Включение или отключение компонентов Windows».
Там вы увидите все версии нужных вам компонентов.
Попробуйте проверить Windows на наличие обновлений, чаще всего там присутствуют обновления NET Framework.
Обновлять и устанавливать нужно не только ту платформу, которую я указал, это относится и к Java или Microsoft Visual C++. Вот собственно и все. Надеюсь, что вы решили данную проблему.
Изменение данных в реестре исправит ошибку win32 приложения
Чтобы попасть в реестр нужно выполнить следующие действия:
Для исправления проблемы можно скачать готовый Win32.Reg файл и просто его запустить.
Загружаемый файл Win32 не скачан – проверяем Хеш-суммы
Нередки случаи, когда загрузка файла через браузер или торрент прерывается. В описании закачки указано, что файл успешно скачан, но это не может быть так. В лучшем случае программа установится, но не запустится, поскольку не хватает важных компонентов для ее работы.
Если игр или программа выдает ошибку, что приложение не является win32, то лучше закачать ее из другого источника.
Чтобы убедиться в целостности скачанных файлов существует алгоритм Хэш-сумм. Для каждого файла он уникальный и имеет размер 32 символа – буквы, цифры. Если один байт в файле изменен, например, из-за не полной загрузки или повреждения данных, то хэш сумма будет отличаться. По-другому хэш сумма называется контрольной суммой.
Итак, на многих сайтах и торрент трекерах, откуда идет загрузка файлов имеется подробное описание и контрольные суммы файлов. После скачивания вы можете сравнить хэши на сайте и с помощью специальной программы под Windows. Такие программы могут проверять сразу несколько алгоритмов контрольных сумм: SHA1, MD5, CRC и другие.
Для проверки и сравнения контрольных сумм вы можете использовать расширение для проводника – HashTab. Инструмент проверки будет находится в свойствах каждого файла на вкладке «Хеш-суммы файлов».
Если нет возможности установить расширение, скачайте программу проводник – Total Commander. Там выберите программу или архив из встроенного проводника, выберите его и нажмите на вкладку «Файл», затем жмем по пункту «Посчитать CRC-суммы (CRC32, MD5, SHA1)».
Самый простой способ решить проблему с недокачанной или повреждённой программой – скачать ее из другого источника.
Файл Win32 является вирусом или поврежден антивирусом
Для проверки файлов можно использовать антивирус, но если вирус все же найден, то антивирусное ПО попытается его вылечить. К сожалению, попытка лечения вирусного файла часто заканчивается неудачей. Почему так происходит? А дело в том, что скачанный файл может быть взломанным, пиратским или в простонародье – крякнутым. Программы или игры, имеющие кряк или, так называемые, файлы таблетки для лечения от лицензии быстро устраняются антивирусами.
Выход здесь только один – отключить временно антивирус, установить и запустить программу. Но делайте это очень осторожно. Устанавливайте приложение только в том случае, если доверяете источнику.
Для проверки системы на вирусы следует использовать не только встроенный программный антивирус, но и специальные одноразовые программы – AVZ, Kaspersky Virus Removal Tool, Dr. Web Cureit.
Если не является приложением Win32 на Windows XP
Многие еще работают на старой доброй Windows XP и ошибки там есть, которые не дают запустить нужную программу. Самая стандартные причины, которые могли привести к ошибке Win32 – поврежденная программа / архив или сбой в системе. Для устранение первой ошибки достаточно скачать приложение из другого источника. Решение второй причины достигается обычной перезагрузкой ОС.
Следующие причины могут быть следующими конкретно на Windows XP.
Итоги
( 5 оценок, среднее 5 из 5 )а на Windows xp win32.reg работает?
ого такие люди ещё есть, у самого windows xp )))
По ссылке win32.reg ошибка 404!! Где бы его качнуть?))
А что делать когда на windows xp выдаёт такую ошибку?
Да ,да у меня в 2018 году xp.
А во время выбора режима совместимости есть только 95 и 2000.
Ну это конечно логично ,ибо когда комп собирался других версий ещё не было.
Подскажите.что делать ,ибо когда я качаю с других сайтов всё равно выдаёт эту ошибку.
Тот же вопрос. При запуске игр рассчитанных на новые ОС, мой ХР выдаёт такую ошибку, хотелось бы знать какую нибудь лазейку, что бы запустить.
И да, сейчас 2018 и у меня тоже ХР. Это самая прекрасная ОС, лучшая из лучших, во всём мире)) и менять на другую категорически не хочу.
setup.exe не является приложением win32 windows xp вот такая ошибка у меня возникла при запуске скриншотера. И помогла мне переустановка этого приложения, но только скачал я его уже с торрента на другом ресурсе и установил, запустил и все заработало. Видимо файл битый был, и такое бывает.
Спасибо очень помогло,от души бро
не получилос сукаааааааааааааааааааааааааааа
Спасибо очень помогла фишка с решением проблемы разъебал ноут, потекла плазма
Конкретные причины данной ошибки могут быть следующими:
- Случайный сбой ПК;
- Программа предназначена исключительно для 64-разрядной ОС Виндовс;
- Программа создана для принципиально другой среды (Linux, Mac, DOS и др.);
- Вирус повредил какой-либо файл приложения; ;
- Антивирус блокирует (или изменил) какой-либо файл приложения;
- Повреждён реестр ОС Виндовс (случайно или намеренно);
- Пользователь удалил какой-либо важный файл приложения (случайно или преднамеренно);
- На ПК отсутствуют необходимые для запуска программы комплементарные файлы (в частности, Microsoft Net Framework и Visual C++);
- Архив программы повреждён;
- Тело программы некорректно загружено из внешнего источника;
- В пиратской версии программы использован некорректный взлом;
- На ПК установлена нестабильная сборка ОС Виндовс.
После того, как мы разобрались, почему возникает ошибка «Не является приложением Вин32», рассмотрим, как от неё избавиться.
Рекомендую выполнить следующее для устранении проблемы:
- Перезагрузите ваш ПК. Если проблема имела случайную природу – она исчезнет;
- Проверьте системные требования программы. Вполне возможно, она требует 64-битную версию ОС Виндовс, и не запустится на 32-битной;
- Проверьте наличие программы на компьютере. Вполне возможно, что вследствие различных причин от неё остался ярлык и малая часть файлов. При необходимости переустановите программу;
- Проверьте систему на вируса. В этом вам помогут такие инструменты как Dr.Web CureIt!, Malwarebytes Anti-Malware, Kaspersky Removal Tool и другие аналоги;
- Попробуйте временно отключить антивирус, а затем запустить проблемное приложение;
- Запустите программу от имени администратора. Наведите курсор мышки на ярлык программы на рабочем столе, кликните правой клавишей мыши, и в появившемся меню выберите «Запуск от имени администратора»;
- Запустите программу в режиме совместимости с более ранней версией ОС Виндовс. Кликните правой клавишей мышки на ярлыке программы на рабочем столе, в появившемся меню выберите «Свойства», перейдите во вкладку «Совместимость», поставьте галочку напротив опции «Запустить программу в режиме совместимости», выберите более раннюю ОС и нажмите на «Применить» внизу. Затем попробуйте осуществить запуск программы с указанного ярлыка;
- Если запускаемый файл имеет принципиально-другое расширение, нежели запускаемые файлы ОС Виндовс (например, dmg (Mac), deb (Linux) и др.), то стоит подумать над их запуском в релевантной среде;
- Откорректируйте системный реестр. Нажмите на кнопку «Пуск», в строке поиска введите regedit и нажмите ввод. В открывшемся реестре перейдите по ветке
Заключение
Читайте также: