準備
Windows 7 Beta已經公開發布了的,可從http://www.microsoft.com/windows/windows-7/beta- download.aspx下載。W7在工作列上做了很大的改進,關於工作列的新特性可以看一下 http://blogs.msdn.com/e7/archive/2008/11/20/happy-anniversary-windows-on-the-evolution-of- the-taskbar.aspx。如果要對Windows 7進行開發最好看一下白皮書,可以從 http://code.msdn.microsoft.com/PDC08WhitePapers/Release/ProjectReleases.aspx?ReleaseId=1797 下載。我們對工作列進行開發會用到Windows 7 Taskbar Enhancements。這裡我們主要實現在工作列的圖 標中顯示進度(Overlay Icons and Progress Bars)。在實現過程中還可能需要用到Windows 7 SDK Beta。
開始
首先在Windows SDK中找到ShObjIdl.idl檔案,如果沒有安裝SDK可以在文後下載。這是一個介面定義 語言檔案,為了方便調用,我們可以將類似
1HRESULT SetProgressValue(
2 [in] HWND hwnd,
3 [in] ULONGLONG ullCompleted,
4 [in] ULONGLONG ullTotal);
這樣的介面聲明改為
1HRESULT SetProgressValue(
2 [in] long hwnd,
3 [in] ULONGLONG ullCompleted,
4 [in] ULONGLONG ullTotal);
也就是把HWND類型改成long。然後用midl將改過的idl檔案產生二進位的tlb檔案, ShObjTlb.tlb是生 成的檔案,ShObjIdl.idl是原檔案。
再用tlbimp將tlb檔案產生託管dll檔案。