We experience the 40 error when our Asp.net code runs under IIS and uses named pipes to a sql server 2005 named instance.
We've tried all suggestions found on blogs and KB articles such as making sure the named pipes protocol is enabled, making sure the Browser service is started, making sure Allow Remote Connections is enabled, making sure we're not using Asp.Net 2.0 membership providers, and the list goes on and on.
We boiled it down to a simple test scenario. We open a SqlConnection to the sql 2005 box in the code with the intention of binding a datareader to a gridview, but it never gets that far because the connection.Open() fails.
If we run this test application as a virtual directory in IIS and Asp.Net 2.0, the connection.Open() fails.
If we run this test application from Visual Studio .Net using Cassini (PWS), the connection.Open() succeeds and binds to the gridview.
What could be causing the connection to fail under IIS but succeed under Cassini We've tried setting IIS to run as a domain user and with digest authentication enabled. That made no difference.
Any help or insight is appreciated!