簡體   English   中英

更改應用程序的圖標:在標題欄中工作,但不在任務欄或開始菜單中

[英]Changing App's Icon: Works in Title Bar, but not in TaskBar or Start Menu

我在Windows7上用Visual C#2010編寫了一個程序,我想更改它在開始菜單和任務欄中顯示的圖標。

我已經在三個不同的地方將圖標更改為我想要的內容:在表單設計器的主窗體屬性列表中; 在我添加到項目中的NotifyIcon中; 並在應用程序部分的“圖標和清單”條目的項目屬性頁面中。

結果是我在應用程序的標題欄上,系統托盤中以及用於運行應用程序的圖標數組中都有正確的圖標,當您點擊alt-tab時會出現這些圖標。 但是我仍然在開始菜單中有錯誤的圖標(我只是將可執行文件拖到開始菜單中將其放在那里),並在任務欄中。 奇怪的是,當我將鼠標懸停在任務欄中的(錯誤)圖標上時,會在其下方彈出正確的圖標以及應用程序的標題。

有人能告訴我還需要改變什么才能使所有顯示的圖標成為我想要的圖標嗎?

相關問題:同樣在開始菜單中,名稱顯示為默認的“WindowsFormsApplication1”,即使我已經改變了我能想到的任何地方,包括所有項目目錄和命名空間。 我可以在開始菜單中輕松地重命名它,但是當我將它拖到那里時我希望它是正確的。

任何問題的任何幫助非常感謝。

編輯:至少在我的屏幕上,我對評論的回答是隱藏的,所以我將在這里添加:

1)我還沒有真正部署它,我只是從VC#IDE運行它,或者點擊VC#創建的exe文件。

2)我沒有將應用程序添加到任務欄。 我說的是應用程序運行時出現在任務欄中的圖標。

3)在我改變圖標的​​三個地方中,我沒有看到任何關於尺寸的信息。

4)如何更新exe中的圖標?

5)即使我完全關閉並重新啟動PC,問題仍然存在。

感謝所有回復的人。

編輯2:還忘了添加在Windows資源管理器中文件名旁邊顯示正確的圖標。

只需發表Hans Passat的評論,就可以獲得更高的知名度。

Windows shell緩存了任務欄上使用的圖標,因此即使在對.NET項目進行更改並重新部署應用程序之后,您仍可能會在任務欄上看到舊的(或默認)圖標。 解決方案是導航到文件夾C:\\ Users \\ usernamehere \\ AppData \\ Local ,並將文件IconCache.db重命名為其他內容,例如IconCache.old.db

然后注銷並再次登錄。

這應該可以解決問題,現在您將在任務欄中看到新圖標。

您需要將快捷方式的圖標更改為您的應用。 開始菜單和任務欄都使用快捷方式的圖標。

或者,您也可以使用WM_SETICON設置一個圖標,該圖標將覆蓋快捷方式圖標。

任務欄中的圖標(如果已固定)和開始菜單是初始設置時創建的快捷方式的一部分。 您必須刪除並重新創建它們。 它們不會動態反映對應用圖標的更改。

采取最激進的方法,我開始了一個全新的項目,復制了舊項目中的所有cs文件,並在構建之前將所有圖標設置為我想要的圖標。 那很有用; 所有圖標都正確,開始菜單中的名稱是正確的。

但肯定有一種方法可以在初始構建后更改它們???

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM