O Windows Server 2012 R2 Datacenter (64 bits) não suporta 32 bits?

1

Eu quero usar o AppVeyor para criar um aplicativo para o Windows. O compilador é o GNAT GPL 2016 (Ada) para Windows x86.

Recebo a seguinte mensagem:

Program 'gnat-gpl-2016-x86-windows-bin.exe' failed to run: The specified executable is not a valid application for this OS platform.

Perguntas:

  • O Datacenter do Windows Server 2012 R2 não oferece suporte a aplicativos de 32 bits?
  • O Wow64 está faltando?
  • O que significa DataExecutionPrevention_32BitApplications : True ?

Get-CimInstance Win32_OperatingSystem | FL * imprime (encurtado):

Status                                    : OK
Name                                      : Microsoft Windows Server 2012 R2 Datacenter|C:\windows|\Device\Harddisk0\Partition5
Caption                                   : Microsoft Windows Server 2012 R2 Datacenter
InstallDate                               : 3/9/2016 2:16:51 AM
CreationClassName                         : Win32_OperatingSystem
CSCreationClassName                       : Win32_ComputerSystem
CSName                                    : APPVYR-WIN
LastBootUpTime                            : 10/21/2016 1:10:27 AM
LocalDateTime                             : 10/21/2016 1:11:59 AM
OSType                                    : 18
Version                                   : 6.3.9600
BootDevice                                : \Device\HarddiskVolume3
BuildNumber                               : 9600
BuildType                                 : Multiprocessor Free
DataExecutionPrevention_32BitApplications : True
DataExecutionPrevention_Available         : True
DataExecutionPrevention_Drivers           : True
DataExecutionPrevention_SupportPolicy     : 3
Debug                                     : False
EncryptionLevel                           : 256
OSArchitecture                            : 64-bit
OSLanguage                                : 1033
OSProductSuite                            : 400
RegisteredUser                            : Windows User
SystemDevice                              : \Device\HarddiskVolume5
SystemDirectory                           : C:\windows\system32
SystemDrive                               : C:
WindowsDirectory                          : C:\windows

This question was moved from StackOverflow to ServerFault.
Has Windows Server 2012 R2 Datacenter (64-bit) no 32-bit support?

Editar:

Parece que DataExecutionPrevention_32BitApplications está me impedindo de executar o instalador. Como posso executar o instalador no modo de compatibilidade de 32 bits do PowerShell? Eu não tenho GUI para selecionar tal opção.

    
por Paebbels 21.10.2016 / 16:49

2 respostas

2

O Server 2012 R2 não está disponível em uma versão de 32 bits do sistema operacional (para todas as versões), mas eles são capazes de executar aplicativos de 32 bits como todos os outros sistemas operacionais Windows de 64 bits e WOW64 está presente, então não acho que seja esse o problema . Isso é a menos que você seja uma das poucas pessoas rodando em um processador Itanium?

DataExecutionPrevention_32BitApplications: True significa que o Data Execution Prevent está habilitado para aplicativos de 32 bits. O DEP é um processo incorporado ao sistema operacional que realiza verificações na memória para ajudar a impedir a execução de código mal-intencionado. A DEP é conhecida por causar problemas em aplicativos mais antigos, portanto você tem a opção de desativá-la para tudo, exceto para sistemas críticos ou para aplicativos específicos.

    
por 21.10.2016 / 17:00
1

O Windows Server 2012 R2 suporta o aplicativo de modelo do x86, mas, por outro lado, a dependência necessária do seu .exe não está instalada. (como vcruntime x86, etc.)

Eu vi o seu comentário no outro thread que o .exe é chamado de powershell, por favor use o console do powershell do x86 para tal tarefa.

%SystemRoot%\syswow64\WindowsPowerShell\v1.0\powershell.exe

    
por 21.10.2016 / 16:59