2010-01-21 53 views
1

對於我的VB.NET應用程序,我使用的是Visual Studio附帶的Windows安裝程序。我可以在我們辦公室的任何一臺計算機上成功安裝和運行我的程序,除了一臺。在這臺特定的機器上,我的程序在載入主表單之前會停頓大約30秒。當我啓動任務管理器時,CPU徘徊在0到1%左右,所以它沒有做任何事情,只是凍結了。它最終會加載,但它真的不需要這麼長時間,尤其是當它在其他計算機上立即加載時。現在這臺機器是windows xp serverice pack 3和.net 3.5 sp1。你們能想到會導致這種情況的任何事嗎?WinForms窗體在一臺機器上啓動時掛起

+0

錯誤安裝的.net框架可能? – 2010-01-21 20:43:28

+0

你在主窗體的加載事件處理程序中有什麼? – Ken 2010-01-21 20:47:45

+0

當你在該機器上運行該程序時會發生這種情況,對吧?那麼它與部署無關! – 2010-01-21 20:47:38

回答

3

你可以使用Process Monitor找出你的程序正在做什麼,而它是在拖延。也許它試圖訪問一些不可用的網絡資源,並且需要等待一段時間...

+0

好吧,生病給這個鏡頭,看看會發生什麼。 – broke 2010-01-21 21:01:39

1

您是否每次加載應用程序或第一次都得到這個結果?如果是後者,你可能會發現它。

應用程序是否連接到任何外部資源?例如,數據庫或網絡共享。如果是這樣,你可以測試一下週圍的情況嗎?

+0

每次加載。它連接到計算機上的本地版本的SQL,而不是在網絡上。 – broke 2010-01-21 21:15:14

1

使用Run-> services.msc檢查所有相同的服務是否在所有其他機器上啓動的相關服務器上啓動。這聽起來像是一種服務在所討論的機器上「手動」加載(因此延遲)並且在其他機器上自動加載。上述進程監視器(該MS Sysinternals Suite的一部分)提到可以是非常有益

編輯:你說 任務管理器,CPU被徘徊在0至1%, 不包括核時?默認情況下,任務管理器不顯示核心時間,您必須從菜單欄中選擇查看,然後從下拉菜單中單擊顯示核心時間。內核活動可能非常重要,而CPU顯示很少或沒有活動。