Consultor Eletrônico



Kbase P165026: Cannot connect to database via ODBC
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   17/05/2010
Status: Unverified

SYMPTOM(s):

Cannot connect to database via ODBC

When application is published can't connect to database

Specified driver could not be loaded.

ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver

IIS 7.0 is a 64-bit version

FACT(s) (Environment):

Application running from Visual Studio on same machine works
Using ODBC administrator 32-bit and testing connection with a Data Source works
Using 32 bit ODBC driver
ODBC connection is DNS-less
.NET Application
Windows Server 2008
x86_64 (AMD64/EMT64)
IIS 7.0
OpenEdge 10.1C

CAUSE:

IIS 7.0 on Windows 2008 64-bit is loading ODBC 64-bit drivers when .NET programs are accessing databases with ODBC.

FIX:

OpenEdge 10.1C doesn't include ODBC 64-bit drivers and needs to use 32-bit drivers. In order to have IIS 7.0 to use 32-bit drivers, Application Pools parameter has to be changed to support 32-bit applications.
Steps to configure IIS 7.0
- Open Internet Information Services from Control Panel->Administrative Tools
- Find Server to modify and click on Application Pools.
- Click on DefaultAppPool then on the right-hand side will be a link to "Advanced Settings".
- Click on that link and another window with Advanced Settings will be opened.
- Find in (General) where it says Enable 32-bit Applications
- Change it to TRUE and click on OK
- In the same menu on the right-hand side where it says Application Pools Actions find Stop
- Click on STOP and then START when it is enabled.
- Try application again.