2010-08-24 141 views
0

這是我的猜測。Windows資源管理器如何提取EXE文件的圖標

我們通過Windows資源管理器列出文件和目錄。 如果Windows資源管理器遇到一個exe文件,這樣做,

LoadLibraryEx(ExefileName,LOAD_LIBRARY_AS_DATAFILE)
然後提取圖標,代表它。

但我不確定。 有沒有人對此有所瞭解?

我在LOAD_LIBRARY_AS_DATAFILE找到一個不錯的案例
還有什麼你知道的嗎?

+0

看看在IconLib(C#)的源代碼中,它可以從.exes讀取圖標文件,以便可能會幫助您:http://www.codeproject.com/KB/cs/IconLib.aspx – 2010-08-24 11:34:04

回答

2

有一個稱爲ExtractIconEx的win32api。

這正是你在找什麼.. :)

http://msdn.microsoft.com/en-us/library/ms648069%28VS.85%29.aspx

+0

ExtractionIconEx不會調用LOAD_LIBRARY_AS_DATAFILE。 它只是解析PE圖像本身。 – Benjamin 2010-08-24 11:46:41

+0

@Benjamin:你究竟在做什麼?答案非常正確,這基本上是Explorer所做的。 – 2010-08-24 11:49:37

+0

我是在假設,資源管理器也使用標準的win32 apis ..我當然可以錯:) – 2010-08-24 11:51:45

相關問題