I am having issue trying to get my Web Application published and running correctly on our IIS server.
When I test from within Visual Studio 2015 with the same ODBC driver setups, everything works fine. It is only once I try to publish the Web Application and access it off the IIS webserver in a browser that I am getting an issues.
I am using Visual Studio 2015 v14.0.25431.01 Update 3
The IIS server is a 64-bit Windows 2016 server
The ODBC driver is a Progress OpenEdge 11.6 driver - 32 Bit
The ODBC connection is setup using the 32-bit ODBC Manager found in c:\windows\sysWOW64\odbcad32
I came across many forums that say to make sure that the ODBC driver is setup correctly, and using the correct ODBC manager, which it is.
I also came across some posts that reference compiling the Web Application and specifying in the Configuration manager to use x86 instead of Any CPU. x86 is not an option when I go into the configuration manager.
I am at a loss as to how to resolve this error so that I can access the new Web Applications from the IIS server.
The error I get is...
Server Error in '/' Application.
ERROR [IM014] [Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Data.Odbc.OdbcException: ERROR [IM014] [Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application
Source Error: An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. Stack Trace:
[OdbcException (0x80131937): ERROR [IM014] [Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application] System.Data.Odbc.OdbcConnection.HandleError(OdbcHandle hrHandle, RetCode retcode) +1358681 System.Data.Odbc.OdbcConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject) +78
Any suggestions, advice, recommendations?
The problem is what the error message try to say (maybe a bit unclear):
ERROR [IM014] [Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application
That means that your are trying to use a 32-bit ODBC driver with the 64-bit version of IIS, and it's not possible use 32-bit drivers/libraries in 64-bit applications (not just for IIS, but for any Windows application).
You have no problem with VS 2015 because it's a 32-bit application, so the driver and the application match. You need to install the 64-bit ODBC driver for IIS and configure a 64-bit ODBC.
User contributions licensed under CC BY-SA 3.0