Рассмотрим следующий скрипт powershell:
[System.IntPtr]::Size
[Environment]::Is64BitProcess
Если я запускаю это прямо в powershell на 64-битной машине, то я правильно получаю
8
True
Но когда я оборачиваю это в самораспаковывающийся инсталлятор с помощью Inno Setup (который построен на 32-битной машине), я всегда получаю:
4
False
Как убедиться, что powershell работает в 64-битном режиме на 64-битном компьютере (и 32-битном для 32-битного компьютера)?
Я также попытался выполнить пакетный файл, который вызывает скрипт powershell, предполагая, что система запустит powershell в режиме по умолчанию, но это также не работает.
Я также пытался iexpress, чтобы обернуть программу, та же проблема.