5

I am using SalesLogix Connection Provider and it’s a 32 bit driver. when I try to open connecton then following exception raises

System.Data.OleDb.OleDbException (0x80004005): No error message available, result code: E_FAIL(0x80004005)

I am using following connections string in both applicaiton(web and desktop)

Provider=SLXOLEDB.1;Data Source=TestServer;Initial Catalog=SLXTestApp;User Id=Alex;Password=alex124;Persist Security Info=True;Extended Properties=Port=1706;Log=Off"

When I use same code with same connection string in desktop application(C#). It open connection successfully and also get data with no error. But gives error me in asp.net 4.0 case.

Following are configurations/settings of my application

1-Platform target in both applications are same i.e x86.
2-I am using IIS(7.5.7600.16385) on webserver 2008 R2 with 64 bit OS.
3-Enable 32-bit Applications is true in Application Pool.
4-Managed pipeline mode = Integrated
5-Aspnet 4.0(C#)

Ali
  • 3,545
  • 11
  • 44
  • 63

1 Answers1

5

The SalesLogix OLEDB Provider is 32 bit only. You need to run the IIS website in 32 bit mode in order to have access to the db.

See here for details: http://help.webcontrolcenter.com/KB/a1114/how-to-enable-32-bit-application-pool-iis-7-dedicatedvps.aspx

You seem to already have that set up... But double check just in case.

Then: is the driver working properly? The usual check is to run the SalesLogix LAN Client (install it if it's not already installed). Possibly just running the client installation will fix the problem for you.

Edit: just to insert into the response another cause of this problem (which seems to be quite common) is the user account running the Application Pool, which should be Local System, usually.

Alberto Chiesa
  • 7,022
  • 2
  • 26
  • 53
  • First of all thanks for your reply.Enable 32 bit is already true in ISS.and I set target platform is x86.Also SalesLogix Client is installed and working fine and I also used same code in desktop application that established connection and retrieve data successfully but problem is in my Web Application – Ali May 17 '12 at 22:08
  • mmm... I'm reading around that your error means usually "Access is Denied". Firewall related? Try to disable it. Or, check the user account which the site is impersonating. Try to set the application pool to run as local system or network service. – Alberto Chiesa May 18 '12 at 13:42
  • I changed this to but same error – Ali May 18 '12 at 14:08
  • Chiesa,A bundle of thanks for you :).I set the application pool to run as local system.then issue has been fixed.Again thanks – Ali May 18 '12 at 14:16
  • I ran into the exact same issue and changing the app pool to run as localsystem as opposed to network service worked for me as well. – nerraga Mar 12 '13 at 20:48