2013-05-08 44 views
0

我搜索了周圍,但我無法找到任何東西。C#窗體項目加載其他機器上的空白

我在VS 2010中編寫了一個c#應用程序,面向.NET Framework 4.0。它有一個.DLL和幾個配置文件,我在編譯時將它們複製到輸出目錄。它在我的電腦上效果很好,我安裝了.NET 4.0 Extended和.NET 4.0 Client。我將構建配置設置爲「釋放」「任何CPU」。

編譯完成後,我將所有文件從發佈目錄複製到共享驅動器上的文件夾,以便網絡上的多臺計算機可以執行它。當我用我開發它的計算機執行它時,它運行得很好。當其他人嘗試執行時,它開始,但只顯示一個小的空白表單,就是這樣。我確定他們安裝了.NET 4.0(Extended和Client,儘管我認爲完整版本是真正需要的)。

我不能爲了我的生活找出它爲什麼這樣做。

所有機器都運行32位Windows Vista SP2。

有什麼想法?非常感謝任何幫助。

+0

您是否嘗試過使用安裝程序?即點擊一次或類似的東西。 – 2013-05-08 17:58:58

+0

您是否檢查過您的應用僅使用** **發佈文件夾中的文件?另外,如果將版本文件夾複製到其他地方,是否檢查過它在自己的機器上工作? – Renan 2013-05-08 17:59:37

回答

0

它可能是很多事情。首先,像一個評論,你應該做一個快速的部署項目,並嘗試安裝在另一臺計算機上,看看它是如何工作的。

如果你不能做到這一點,在這裏幾件事情要檢查:

  1. 它可以是網絡權限的問題。我已經注意到一個.NET應用程序,因爲X原因無法在網絡上執行,但在桌面上工作。要進行檢查,讓用戶在執行前將其複製到他們的計算機上。
  2. 我不認爲這是一個.NET的問題,因爲它不會讓你啓動應用程序。
  3. 我的猜測是,從另一臺計算機運行時,您的某個控件/庫(沒有顯示的控件/庫)沒有適當的引用。要檢查,運行應用程序「Dependency Walker」(你可以在google上找到它),並查看其他計算機缺少的DLL。

這就是我現在所能想到的!祝你好運!你只需要使用消除方法,你會發現問題。

+0

#3是它!是的,對於我設置「copy local」等於true的所有引用,將其複製到共享目錄中,並且瞧。所以現在我必須回頭逐一消除它們,直到找到需要在編譯時單獨複製的庫。或者,一條可能更容易的路線,您的建議。 我寧願部署或安裝程序,但我必須得到批准,這需要時間:)謝謝! – Rushingjs 2013-05-08 18:19:34

相關問題