2013-03-05 70 views
0

我已經在Visual Studio 2010中使用C#創建了一個Windows窗體應用程序,它將SQL Server中的數據庫連接起來。畢竟我的開發完成後,我複製在我的機器生成的exe文件,並粘貼到另一臺機器,並嘗試執行它,但它不工作。無法運行從c#創建的.exe文件

我可以看到在任務管理器中啓動的進程,但它在5秒後關閉。我甚至嘗試創建該應用程序的安裝程序,並安裝在該機器上,但我仍面臨同樣的問題。

但是在我的機器中,它在兩種方式中都能夠完美地工作。任何人都可以幫助我找到我出錯的地方。

在此先感謝

+2

生存控制檯應用程序已在事件查看器看一下,它顯示什麼錯誤?另一臺機器可能缺少一些您的項目依賴的.dll文件。 – DGibbs 2013-03-05 12:30:51

+1

你能告訴我們更多關於這兩個系統的配置嗎? – 2013-03-05 12:31:16

+2

您是否在其他機器上安裝了.net框架?在正確的版本? – Tomtom 2013-03-05 12:34:07

回答

0

也許你有一些引用的程序,你沒有應用程序本身一起復制。

或者從其他機器運行時的連接字符串是無效的(如果你使用本地SQL數據庫的工作,或網絡或任何在它不是入店其他機器上)

或者,你沒有權利在其他機器上運行它。

+0

我懷疑sql連接的問題我在主服務器上使用Windows身份驗證,其他系統可能連接到這個 – Ramesh 2013-03-06 07:11:19

+0

如果其他系統有權訪問服務器並且他們有權訪問(如在安全權限中)那麼它應該工作。 – dutzu 2013-03-06 07:28:32

+0

在其他系統中沒有SQL服務器,如何檢查他們是否有權訪問 – Ramesh 2013-03-06 10:37:32

0

由於您沒有提供錯誤,因此您收到的答案和評論都是有教育意義的猜測。

你應該檢查錯誤事件查看器...

這將讓你瞭解正在發生的事情。如果你不能修復它,添加此信息到您的問題

由於您沒有發佈異常消息,所以您可能不適當catching exceptions。只是爲了確保將你的主要功能包圍在Try/Catch中。

在Catch中,編寫一些代碼將消息異常轉儲到文件中,或者甚至更好地使用Log4Net。爲了簡單起見,現在只需添加一些代碼即可寫入文件。喜歡的東西:

static void Main() 
    { 
     try 
     { 
      //Your code 
     } 
     catch (Exception ex) 
     { 
      //Write ex.Message to a file 
      using (StreamWriter outfile = new StreamWriter(@".\error.txt")) 
      { 
       outfile.Write(ex.Message.ToString()); 
      } 
     } 
    } 

PS:如果你可以用Console.Write