網上找了一下,大概可以總結有
方法一:
要更改圖標,在resource.h中打開之后可以看到各個資源的ID值,一般mfc自動生成的IDR_MAINFRAME是128,自己添加的會大於128,順序后延,編譯時默認將ID最小的作為exe的圖標,所以只要我們將其改之就可以了,還是上面的對話框,將IDI_ICON1改為128,將IDR_MAINFRAME改為其他的大一點的數不能太大了,因為可能會有其他用處,然后重新rebuild,這時就可以看到exe圖標變成了自己的IDI_ICON1的圖標了。
方法二:
1、在程序res文件夾下,刪除MFC圖標文件,加入自己的圖標文件;
2、在圖標IDR_MAINFRAME的屬性對話框中,修改File name路徑為自己的圖標文件。
自己照着兩個方法都改了,但是debug和realease編譯生成的程序圖標都沒有變化,搞了一下午都沒有結果;
但是,當我看到這一篇博客后https://blog.csdn.net/langb2014/article/details/50644792,醍醐灌頂
其實圖標已經改好了,但是由於系統的問題,統下圖標的緩存沒有刷新,所以改好的圖標沒有顯示出來,只需要重建下圖標緩存既可。
在項目下建一個txt文件添加:
rem 關閉Windows explorer
taskkill /f /im explorer.exe
rem 清理系統圖標緩存數據庫
attrib -h -s -r "%userprofile%\AppData\Local\IconCache.db"
del /f "%userprofile%\AppData\Local\IconCache.db"
attrib /s /d -h -s -r "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\*"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_32.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_96.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_102.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_256.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_1024.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_idx.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_sr.db"
rem 清理 系統托盤記憶的圖標
echo y|reg delete "HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify" /v IconStreams
echo y|reg delete "HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify" /v PastIconsStream
rem 重啟Windows外殼程序explorer
start explorer
記事本->選擇另存為->所有文件->命名為XXX.bat