2013-02-09 80 views
5

我們一直在爲公司的預訂系統工作。當我們第一次嘗試在他們的計算機上運行它時,我們需要下載.NET Framework 4.0。所以我們這樣做了(或者說我們下載了4.5版本,因爲4.0的鏈接不起作用)。現在,當我們嘗試運行它時,沒有任何反應。如果沒有安裝Visual Studio,程序無法啓動?

我們已經在C#中使用實體框架構建了程序 - 如果代碼優先縮小了它,則會先執行代碼。

發佈時我們是否在設置中丟失了某些東西?我們已經嘗試在發行版和發佈嚮導中編譯它,但都無效。

+0

你確定你有發佈版本嗎? – 2013-02-09 09:40:55

+0

檢查您的Windows應用程序事件日誌。 – 2013-02-09 09:51:31

+0

@ ofstream /好了,我們從Debug更改爲Release,並且所有文件都在bin/Release文件夾中,至少我確信它是否是發佈版本?我不知道。 – noMad17 2013-02-09 09:54:58

回答

1

這很可能是由於缺少組件。在您的開發配置中,您的所有庫都可以運行該程序,並且在部署中會有/缺少dll(s)。

您可能會嘗試的是控制開發機器的GAC,並嘗試查找您使用的除.net庫之外的任何庫是否安裝在GAC中。然後,您可能一直在從GAC引用該dll,並且在部署時,該庫可能在​​GAC中缺失。之前我曾在一個共享點項目中看到過這個。

此外,檢查Windows事件日誌很有用。您可以找到實際的異常。

p.s.如果這是一個asp.net項目,不要忘記在框架部署後運行regiis.exe

0

如果您的應用程序有一個GUI並且它沒有顯示意味着您的應用程序在構造函數中失敗。你能做的最好的事情就是記錄從構造的每一步像這樣的東西:

public void log(string msg) 
{ 
    StreamWriter file2 = new StreamWriter(@"c:\file.txt", true); 
    file2.WriteLine(msg); 
    file2.Close(); 
} 

,比調用它在構造函數中每一行像

log("InitializeComponent"); 

後,如果您使用的FormLoad事件,你應該也在那裏做。同時檢查您的代碼空嘗試捕獲。

相關問題