WM自定義桌面"今日外掛"

Nikey001發表於2009-06-09

在PPC、Mobile5、Mobile6中,自定義桌面快捷方式是通過“今日外掛”完成的。近日我研究了“今日外掛”的開發過程,和大家一起分享我的心得。

1.今日外掛必須以C++標準動態連結庫完成,並且必須包含匯出函式InitializeCustomItem。宣告如下:

HWND APIENTRY InitializeCustomItem(TODAYLISTITEM *ptli, HWND hWndParent)

此方法中完成的工作,類似c++ sdk開發win32窗體的過程。

2.匯出函式InitializeCustomItem的序號必須定義為240,所以必須利用def檔案宣告,我在測試過程中,因為沒有定義序號,一直沒有實現功能。估計作業系統是按序號呼叫此dll的方法。def檔案如下:

EXPORTS
    InitializeCustomItem @ 240 NONAME

 

3. 完成dll編寫後 ,需要登錄檔中註冊:參考以下格式:

[HKEY_LOCAL_MACHINE\Software\Microsoft\Today\Items\Topevery.TodayPlus]
"Options"=dword:00000000
"Type"=dword:00000004
"DLL"="\\Program Files\\Topevery\\Topevery.TodayPlus.Addin.dll"
"Name"="Topevery.TodayPlus"

登錄檔的內容和 函式InitializeCustomItem中的引數TODAYLISTITEM *ptli對應,你會發現TODAYLISTITEM 結構體的東西就是登錄檔的內容;

4.今日外掛相關的訊息:以WM_TODAYCUSTOM_開頭的常量

5.參考文章:

6.程式碼不提供了,實際上,看完了上面說的2篇參考文章,絕對不會有任何問題了。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21255398/viewspace-605615/,如需轉載,請註明出處,否則將追究法律責任。

相關文章