我想知道是否可以通過從用戶計算機匯入檔案來找出.dll 檔案存盤了多少個圖示。我將詳細解釋我想要做什么。我需要知道 .dll 檔案包含多少個圖示,因為我使用的是串列視圖,它將放置此 .dll 檔案包含的圖示,因為當此表單啟動時,它將向用戶顯示圖示,并且將在串列視圖中顯示的圖示數量是我顯示這些圖示所需要的。
我想要做的是用戶可以從他的計算機匯入他自己的 .dll 檔案。我的程式可以讀取 .dll 檔案或圖示。但是我必須告訴它 .dll 檔案的路徑,當我添加 .dll 檔案時,我使用一個程式,而不僅僅是任何程式,它是 GConvert 5。它非常適合以任何格式從 .dll 檔案中保存圖示但我用它來知道我打開的這個 .dll 檔案中有多少個圖示。知道這一點后,我為每個圖示添加一行代碼(從 0 開始到(.dll 檔案中的圖示數))。但是當我不在用戶計算機后面時,我怎么知道一個 .dll 檔案包含多少個圖示呢?我這樣做了:
從工具箱添加 OpenFileDialog
添加擴展名:dll 和 ico
在代碼中,我補充說:
if (MyOpenFileDialog.ShowDialog() == DialogResult.Ok) { string dllFile = MyOpenFileDialog.FileName; // Ok, now I have the .dll file but I still can't find out how many icons this dll file contains. //... (Some code that is necessary and will not destroy the counting of icons) }
但是我在谷歌上找不到任何解決方案,嘗試了一些代碼,但是如果我來到 stackoverflow,我的代碼就不起作用。
謝謝你幫助我!
我嘗試使用回圈在串列視圖中顯示圖示,但它不起作用,我希望用戶打開 .dll 檔案,并且在串列視圖中它只會顯示該串列視圖中的圖示數量。
uj5u.com熱心網友回復:

請注意 Jimi 根據檔案在評論中突出顯示的點,以便在您不需要圖示句柄時立即銷毀它們:當不再需要它們時,您必須通過呼叫 DestroyIcon 來銷毀 ExtractIconEx 提取的所有圖示功能。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/450322.html
