来自Console应用程序的命名管道错误40

时间:2012-04-19 19:55:04

标签: sql-server visual-studio sql-server-2005 console-application

我在开发机器上连接到sql 2005实例时遇到了一些困难。数据库服务器在打开的互联网上。数据库服务器在非标准端口上运行,因此我在sql config manager中配置了别名。

我一直在使用这个数据库开发Web应用程序。我可以通过我的开发机器上的visual studio + cassini运行的web应用程序连接到它。此外,我可以使用sql server management studio连接到它(通过别名)。

然而,当我运行我的控制台应用程序时,当我尝试打开连接时,出现命名管道错误40错误。我正在使用IDENTICAL连接字符串和相同的代码。

我正在撕扯我的头发 - 当你谷歌关于如何处理这个错误时有很多东西,但它通常是一个有效的情况或它没有 - 它不适用于管理工作室,和一个Web应用程序,但不是控制台应用程序。

有没有人有类似的东西,或者有任何可能有帮助的指针?

感谢

1 个答案:

答案 0 :(得分:0)

您的帐户的Client Protocols Configuration可能已命名管道协议已启用且优先级高于TCP(这是默认情况),而Web服务帐户已将其禁用或优先级低于TCP(这是一旦明确完成,将其从默认值更改)。您可以从自己的帐户客户端协议设置中禁用命名管道(上面的链接显示了如何),或者最好,您可以从连接字符串中明确强制TCP,请参阅How to use the server name parameter in a connection string to specify the client network library