Как мне разрешить “%1 не является допустимым приложением Win32”?
-
06-07-2019 - |
Вопрос
Окружающая среда:
Windows Server 2003 R2 Enterprise 64bit, SP2
Предположительно установлен .NET framework (2.0 SP2, 3.0 SP2, 3.5 SP1)
Я говорю "предположительно", потому что они перечислены как установленные в разделе Установка и удаление программ.Я не уверен, что это должным образом установлен, потому что вкладка "ASP.NET" не добавлена ни на один из сайтов в IIS.
В разделе расширений веб-службы IIS у меня есть как "ASP.NET Версия v2.0.50727" (разрешено), так и "ASP.NET версия v2.0.50727 (32-разрядная версия)" (запрещено).
На сайте, о котором идет речь, включено выполнение скрипта.
Проблема:
Я создал супер-простой ASP.NET/C # веб-сайт:Default.aspx с идентификатором метки="Label1" и исходным кодом с: Label1.text = "Hello World";
и ошибка, которую я получаю, это:
%1 не является допустимым приложением Win32.
Решение
Ты пробовал бегать:
aspnet_regiis -i
из командной строки?
Другие советы
Также проверьте свой пул приложений.В 64-разрядной среде вам может потребоваться установить "Включить 32-разрядные приложения" в дополнительных настройках.
У меня было "%1 не является допустимым приложением Win32". сообщение об ошибке, потому что моя переменная среды PATH также была перепутана.Он включал этот мусор из установки python:
%PYTHON_HOME%;
%PYTHON_HOME%\Scripts;
У меня была аналогичная ошибка с IIS7 на 64-разрядной версии Windows Server 2008.
Журнал fusion здесь ничем не помогает, и оказалось, что в моем случае была сторонняя сборка, которая ссылалась только на 32-разрядную сборку или собственную dll.(Xceed, если быть точным)
Чтобы определить, какая сборка загружается 64-разрядной средой выполнения :
- Подключите отладчик VS2008 к w3wp.exe процесс, соответствующий вашему пулу приложений
- Перехватывать все исключения (меню Debug / Exceptions / проверить все "Исключения среды выполнения Общего языка").
- Убедитесь, что ваше приложение полностью перезагружено (например, изменив web.config).
- Когда в Система.Исключение BadImageFormatException возникает исключение, найдите имя сборки в окне просмотра трассировки стека.
Помните, что загружаются все сборки, размещенные в каталоге bin, независимо от их фактического использования в приложении.
У меня было "%1 не является допустимым приложением Win32". сообщение об ошибке, потому что моя переменная среды PATH была перепутана.Ну, более конкретно, в самом ПУТИ не было ничего плохого.Вместо этого я случайно создал файл с именем "C:\Program", который использовался вместо "C:\Program Files\" для поиска пути.Случайное создание "C:\Program" было результатом вызова Notepad ++ из командной строки для C:\Program Files est.txt (без кавычек), поэтому Notepad ++ подумал, что я пытаюсь отредактировать файл с именем "C:\Program", и создал файл для меня.
У меня была такая проблема.Я развернул .EXE в Windows 2003, которая не поддерживает .NET 4.5.Я перестроил программу с помощью .NET 4, и это сработало.