2010-08-02 29 views
0

當機器啓動時可以加載WPF應用程序嗎?我們的WPF應用程序在我們現有的客戶端硬件上花費了30秒,我們希望通過讓應用程序在機器啓動時啓動來「隱藏」它。但是我們的應用程序在啓動時啓動的事實應該對用戶是不可見的。改進WPF應用程序Coldstart:在機器啓動時運行程序的建議

我們將如何去建設這樣的事情?有沒有一個術語可以提供教程的谷歌?如果有一個特定的WPF會很好,我們可以抓住一個WPF。注意:如果對此有任何道德疑慮(因爲我同意當計算機執行時有20個程序啓動令人沮喪!),我們正在爲專業行業構建軟件,他們將使用他們的計算機主要運行我們的應用。

+0

你能告訴它是什麼加載/準備?這個延遲不能來自WPF。 – 2010-08-02 14:50:52

+0

我們的客戶端機器有點過時(Win XP,Intel Pentium M 1.4 GHz,760 MB RAM) - 在我的開發機器上,冷啓動時間大約是13秒而不是27秒。我們的其他應用程序(我們正在構建兩個同步應用程序)我想最大的熱門是DevComponents UI Framework和TTS Engine(是否有一種方法可以檢查每個DLL需要加載多久?)Process Explorer報告21個「系統DLL」(例如System。*,PresentationFramework,PresentationFramework .Aero,WPFToolkit)和我們項目的9個DLL(其中4個是資源;雙語應用程序)。 – chocojosh 2010-08-02 15:08:29

回答

3

最簡單的辦法是

  • 確保你的大庫安裝在GAC
  • 編寫使用虛擬應用程序(大部分)的庫。實際上使用它們,所以他們得到加載。
  • 在啓動時運行的虛擬
  • 本身使虛擬停止,或保持它活着隱藏

這絕不會與正常應用程序的開始干涉。好處是圖書館得到加載和jitted。缺點是您的應用仍需要加載&初始化。

0

Sasha有更多的技巧沒有在這裏列出,重新定義您的模塊,利用預取設施和壓縮(UPX,喲!)。

相關問題