Além de ativar aplicativos de 32 bits no win 64, é necessário ativar a integração do asp.net IIS de 32 bits. No Windows \ Microsoft.NET \ Framework \ v2.0.50727 (não no diretório Framework64), execute:
aspnet_regiis -enable -i
Eu tenho uma configuração do servidor IIS6 executando o Windows Server 2003 x64, R2, SP2. Tudo está funcionando muito bem, eu posso hospedar sites no IIS, e funciona exatamente como eu quero.
O problema, eu tenho um WebApp do ASP.NET que precisa usar um driver Odbc de 32 bits. Eu configurei o ASP.NET WebApp para compilar apenas para x86, mas ainda não funciona.
Eu também tentei este comando no servidor para ativar processos de trabalho x86, mas também não funciona:
cscript.exe adsutil.vbs set W3SVC/AppPools/Enable32BitAppOnWin64 true
de aqui
Ainda assim, o aplicativo falha ao carregar o driver ODBC, se eu executar o mesmo código em uma máquina dev x86 ele funciona como esperado, ele também funciona no meu x86 IIS7; Eu gostaria de evitar a construção de outro servidor web de produção para este WebApp, então qualquer ajuda é apreciada.
Além do que o @dmo respondeu acima, tive que permitir que o Application Pool lide com aplicativos x86 . Para isso, abra o Gerenciador do IIS e, em seguida, escolha Pool de Aplicativos , no qual você espera que ele manipule x86 e abra Configurações Avançadas . Agora, encontre a propriedade Ativar aplicativos de 32 bits e defina como True.
Você tem outras DLLs que poderiam estar acessando o driver ODBC em "Qualquer" em vez do modo de 32 bits? Esse provavelmente seria o seu problema, tivemos um problema semelhante e resolvemos isso mudando os assemblies que chamavam o driver para 32 bits apenas ... mas deixamos o aplicativo da Web como "Any" (64 bits).