Após um longo período estou de volta.
Gostaria de colocar uma dica para quem está trabalhando com desenvolvimento ASP.NET.
Recentemente, fazendo o deploy de um projeto em um servidor de 64 bits, ao rodar a aplicação, que usava uma tabela do MS Access para armazenamento temporário de dados, vi a mensagem “Erro preenchendo <nome da tabela>. O provedor ‘Microsoft.Jet.OLEDB.4.0’ não está registrado na máquina local”. A figura abaixo demonstra a mensagem na janela do browser.
Esta mensagem só acontecia quando a aplicação precisava acessar a tabela.
Inicialmente tentei fazer um upgrade o JET mas não deu certo.
Também compilei a aplicação ASP deixando-a com a plataforma “target” como X86 e ainda assim não deu certo.
O que resolveou foi inicialmente compilar a aplicação realmente como X86 e em seguida configurar o IIS para que pudesse executar aplicativos de 32 bits.
Para isso, abra no servidor o gerenciador do IIS. Você precisará de permissão de usuário administrativo. Na janela “Conexões” selecione o nó “Pool de aplicativos” como na figura abaixo.
Em seguida, na janela “Ações” clique em “Definir Padrões do Pool de Aplicativos”. Isto irá abrir a janela abaixo:
Marque o campo “Habilitar Aplicativos de 32 Bits” como True.
Pode ser que seja necessário reiniciar o IIS.