2010-07-08 116 views
1

我有一個.net 3.5 WPF應用程序,它可以在許多Windows 7計算機上正常工作,但在顯示窗口之前它會在啓動時直接掛起。WPF Windows 7應用程序掛起

機器正在運行64位win 7並且安裝了.Net 4。還有其他機器具有相同的配置工作。

不顯示錯誤消息,並且沒有任何內容寫入事件日誌中。我運行了進程監視器和fuslogw,並加載了所有依賴項。

任務管理器顯示0%的CPU使用率

應用程序構造運行(打開閃屏),但啓動時不會被調用。

任何想法要尋找什麼。

編輯:

今天我刪除了啓動畫面,應用程序工作正常。恢復以前的版本與啓動畫面,它的工作。不知道是什麼造成的。我的代碼執行的唯一部分是

public App() { 
    SplashScreen splashScreen = new SplashScreen("Logo.png"); 
    splashScreen.Show(true); 
} 
+0

改善本地記錄。從應用程序運行到啓動畫面,事件之前和之後都會觸發以啓動主應用程序。你需要確切地知道在這個時間框架內發生了什麼,以及發生什麼事件或沒有發生。爲了它的價值,聽起來像是一種競爭狀態。 – 2010-07-08 14:27:35

回答

0

我跑過這個問題,它似乎是一個損壞的字體緩存。

步驟來解決:

  1. 運行services.msc
  2. 停止爲Windows Presentation Foundation字體緩存3.0.0.0服務
  3. 刪除FontCache3.0.0.0.dat。
  4. 從用戶的配置文件目錄中刪除文件GDIPFONTCACHEV1.DAT。
  5. 重新啓動計算機。

在Windows Vista和Windows 7,FontCache3.0.0.0.dat位於%WINDIR%\ ServiceProfiles \本地服務\應用程序數據\本地的文件,該文件GDIPFONTCACHEV1.DAT位於%USERPROFILE%\應用程序數據\地方。從原始源

改性步驟:http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/7cc032c1-5f4d-4518-adc6-f53afd051e6b