• Администрация SafeZone приветствует вас на нашем форуме!
    Если вы больше не желаете видеть рекламу при просмотре тем и сообщений - то достаточно просто зарегистрироваться. Для зарегистрированных пользователей реклама не отображается.

System32\Powershell.exe - неподдерживаемое 16-разрядное приложение

alex-s

Новый пользователь
Сообщения
21
Симпатии
1
#1
// Часть сообщений перенесена из темы: https://safezone.cc/threads/zapustit-skript-powershell-iz-cmd.24325/

А как на 64-разрядных исправить вот это ???
Подскажите пожайлуста.....
Я изменил путь

PowerShell:
@echo off
SetLocal EnableExtensions

set "ps=" & for %%X in (powerShell.exe) do set "ps=%%~$PATH:X"
if not defined ps set "ps=%systemRoot%\syswow64\windowsPowerShell\v1.0\powerShell.exe"

For /F "UseBackQ delims=" %%a in (`"cmd /c "
  "%ps%" -ExecutionPolicy ByPass -NoProfile -command "echo 123"
""`) do (
  echo %%a
)
pause
Все равно ошибка.

И можете дописать проверку на разрядность, чтобы данный скрипт мог запускаться на любой версии Windows 32 или 64 разряда ?
То есть при запуске что бы проверялась разрядность, соответственно в зависимости от результата проверки запускалась нужная версия Power shell и запускалась не команда а уже готовый скрипт Powershell ?
Я как понимаю в 64 разрядной системе запускается cmd 32 разрядное и оно не может правильно интерпретировать переданные ему команды на запуск powershell 64 разряда ?
Почему ?
И в то же время если я запускаю cmd вручную и ввожу

CMD/BATCH:
%systemRoot%\syswow64\windowsPowerShell\v1.0\powerShell.exe
тогда появляется консоль powershell
???
 

Вложения

Последнее редактирование модератором:

Dragokas

Very kind Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
5,736
Симпатии
5,640
#2
Я как понимаю в 64 разрядной системе запускается cmd 32 разрядное
Нет.
Если только вы не запускаете консоль из-под 32-разрядного процесса.

оно не может правильно интерпретировать переданные ему команды на запуск powershell 64 разряда ?
Смотря что за команды.

И можете дописать проверку на разрядность, чтобы данный скрипт мог запускаться на любой версии Windows 32 или 64 разряда ?
Могу, но не буду, потому что это не нужно. Он и так запускается на системах с любой из разрядностей (x32 / x64).

запускалась не команда а уже готовый скрипт Powershell ?
замените в скрипте строчку на такую:
CMD/BATCH:
"%ps%" -ExecutionPolicy ByPass -NoProfile -file "путь к скрипту.ps1"
По поводу скрина - это какие-то проблемы в вашей системе.
На обычной системе нет файла PowerShell.exe в папке \Windows\System32
Упакуйте этот файл в архив с паролем virus и пришлите на адрес quarantine<at>safezone.cc (замените <at> на @) с указанием вашего никнейма в заголовке письма и ссылки на эту тему.

Напишите также, чему = переменная PATH. (в CMD ввести слово PATH).
 

alex-s

Новый пользователь
Сообщения
21
Симпатии
1
#3

Вложения

Последнее редактирование модератором:

akok

Команда форума
Администратор
Сообщения
15,129
Симпатии
12,376
#4
alex-s, доходят. Какую ошибку возвращает почтовик?
 

Dragokas

Very kind Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
5,736
Симпатии
5,640
#5
alex-s, пожалуйста, больше никогда не прикрепляйте потенциально опасные вложения на форум, даже с паролем. Удалил. Архив распаковать не смог. Там стоял неизвестный пароль, не virus

По поводу почты, пожалуйста, попробуйте отправить ещё раз, удалив у файла powerShell.exe расширение .exe, перед его упаковкой в архив.

Ваш вопрос перенёс в отдельную тему для разрешения системных проблем.
Если подтвердится наличие заражения, предлагаем оформить новую тему в разделе лечения.

А пока в целях диагностики, сделайте ещё такой отчёт: https://safezone.cc/threads/kak-sdelat-issledovanie-utilitoj-getsysteminfo.16791/
 

Dragokas

Very kind Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
5,736
Симпатии
5,640
#7
Alien, поддержка эмуляции прекращена, начиная с Vista. Но это не имеет отношения к теме.
 

Alien

Пользователь
Сообщения
414
Симпатии
54
#8

Dragokas

Very kind Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
5,736
Симпатии
5,640
#9
Alien, я ошибся. Из Vista вырезан 16-битный интерпретатор command.com, но 16-разрядные программы всё ещё могут быть запущены через cmd.exe,
однако поддержка есть только в x32-разрядных версиях Windows. Кроме того, начиная с Windows 8, как вы правильно отметили, необходимо ещё и включить компонент NTVDM.
 
Сверху Снизу