2010-02-18 17 views

回答

1

桌面是一個列表視圖控件。您可以通過查找桌面窗口並向其發送LVM_GETITEMCOUNT和LVM_GETITEMPOSITION消息來獲取單個圖標的位置。

不幸的是,LVM_GETITEMPOSITION要求將lparam設置爲擁有列表視圖(例如explorer.exe)的進程的地址空間內的POINT結構,因此爲了執行任何操作,您需要打開explorer.exe進程,在該進程中分配一些內存,計算該內存相對於瀏覽器進程的地址,將LVM_GETITEMPOSITION消息與新分配的內存一起作爲lparam發送,最後讀取該內存的內容。我已經做了很長一段時間,所以我不記得細節,但希望這可以幫助你。