我有一個可以最小化到系統托盤的WinForms應用程序(我使用VB)。我使用了使用NotifyIcon並使用Form_Resize事件播放的多篇文章中描述的「hackish」方法。.NET最小化到托盤和最小化所需資源
這一切在美學上都很好,但所使用的資源和內存不受影響。我希望能夠最小化系統托盤時的資源,就像Visual Studio一樣。如果您在Visual Studio中進行編碼,內存使用量可能會增加(取決於項目大小)到500 MB以上,但是當將Visual Studio最小化到任務欄時,內存大幅減少到(我所假設的)最小量。
有沒有人有任何線索如何做到這一點?
下面是對應用程序的簡短描述,如果有人發現它相關:我有一個窗體窗體,其中包含一個ListView,其中包含我IT部門的工作訂單。該應用程序有一個「偵聽器」,用於通知何時提交新的工單。所以,當應用程序在系統托盤中運行時,我所做的只是將ListView中的項數與每隔幾分鐘SQL表中的行數進行比較。
編輯:更具體地說,窗體本質上具有通過控件使用的線程和資源,當窗體不可見時(在系統托盤中),這些資源仍在使用中。我可以做些什麼來最大限度地減少這些資源,而不是在恢復表單時殺死所有控件並重新繪製它們。
您VS之外運行應用程序,是否正確?它會誇大應用程序的內存使用量。 – StingyJack 2008-11-04 20:14:13