Resolvendo problemas com Vista/7 64, IIS e Access.
Dica: Resolvendo problemas com Vista 64, IIS e Access
Pessoal vai uma dica importante para quem pretende desenvolver com Windows 64 bits rodando os sites no IIS utilizando Access.
Bom o primeiro problema é que utilizando OleDb ele não funciona caso o aplicativo não esteja compilado para x86, então ao tentar executar algo aparece a seguinte mensagem de erro:
O provedor “Microsoft.Jet.OLEDB.4.0” não está registrado na máquina local.
Bom então para resolver esse problema devemos forçar a compilação do nosso aplicativo para x86, clique com o botão direito no projeto dentro do Solution Explorer e depois em Propriedades. Na guia Compile, clique em Advanced Compile Options e altere Plataform target para x86.
Feito isso publique novamente o site no IIS, e agora outro erro ocorrerá, o site não vai mais abrir, agora para resolver o problema temos que configurar o Application Pool do IIS para aceitar aplicativos 32 bits.
Bom, agora o site volta a funcionar e o erro do provider não ocorre mais, mas temos que tomar cuidado com mais um detalhe, como é Access o arquivo pode estar configurado como Somente Leitura, caso esteja o seguinte erro vai ocorrer ao tentar salvar algo no banco.
Microsoft OLE DB Provider for ODBC Drivers
A operação deve usar uma consulta atualizável.
Caso isso ocorra é só dar permissão de escrita para o usuário do IIS no arquivo.
Bom é isso ai, caso forem utilizar Windows 64bits, IIS e access é só seguir os passos descritos aqui que tudo funcionará.