2013-03-26 53 views
0

我有C#編寫一個.NET應用程序中我使用這些字符串來連接命名管道在Windows Server錯誤40 2003

str = "Data Source=200.1xx.2yy.1zz ;Initial Catalog =minofom;uid =sa;pwd = abuelita"; 

和App.config中相同的字符串:

<add name="MiniFinan.Properties.Settings.MiniFimConnectionString" 
    connectionString="Data Source=200.1xx.2yy.1zz ;Initial Catalog =minofom;uid=sa;pwd = abuelita" providerName="System.Data.SqlClient" /> 

所有當我離開本地網絡時,應用程序和報告工作完美,但是當我在服務器或本地網絡的任何計算機上安裝應用程序時,該應用程序向我顯示此錯誤:

「Named Pipes Provider, error: 40 - Could not open a connection to SQL Server」

本地服務器是域控制器,我用這個字符串局域網:

str="Data Source=192.168.2.254 ;Initial Catalog =MinoFom;uid =sa;pwd = abuelita" 

所有形式的工作,但是當我打電話給任何報告無法連接,我用的是相同的字符串的應用的.config。我已經在其他Server 2003(不是域控制器)中測試過相同的應用程序,並且報告有效,有任何寫域的字符串的方法,以及如何解決這個問題的任何想法?

我檢查SQL瀏覽器是否聯機,協議:共享內存/命名管道/ TCPIP已安裝並正常工作。我認爲是域名的東西。

+0

看起來您沒有傳入Sql Server將偵聽的端口號嘗試在您的連接字符串中放入ipAddress:1433或IpAddress,1433。[故障排除錯誤40 ](http://blogs.msdn.com/b/sql_protocols/archive/2005/10/22/483684.aspx) [第2部分故障拍攝錯誤40](http://blogs.msdn.com/sql_protocols/檔案/ 2005/10/29/486861.aspx) – MethodMan 2013-03-26 19:28:03

+0

我知道這是舊的,但對任何其他人閱讀此請勿連接從應用程序作爲sa!永遠。如果他們試圖強迫你這樣做,請放棄你的工作。如果這是鎮上唯一的工作,改變職業或離開。永遠永遠永遠不要這樣做。我是認真的。決不... – ongle 2015-01-28 23:48:09

回答

0

我一直在使用兩個字符串之一的形式解決:

str = @"Data Source=TORRE ;Initial Catalog =minofom;uid =sa;pwd = abuelita"; 

,並在App.config其他的報告:

connectionString="Data Source=MyDomain\TORRE;Initial Catalog=MinoFom;uid =sa;pwd = abuelita" 

它的更多鈔票保存應用不止一個字符串。 config,享受

相關問題