Windows 總共支援七種 Shell 擴充程式,
它們分別是:
拷貝鉤子處理常式(Copy Hook Handler)
內容相關性功能表處理常式(Context Menu Handler)
拖放處理常式(Drap-and-Drop Handler)
表徵圖處理常式(Icon Handler)
屬性工作表處理常式(Property Sheet Handler)
放置處理常式(Drop Target Handler)
資料處理程式(Data Object Handler)
拷貝鉤子處理常式是一種較為簡單的 Shell 擴充,藉助它 Windows 系統可以允許或不允許使用者對某個檔案對象進行移動、拷貝、刪除或改名等操作。
使用內容相關性功能表處理常式可以修改 Windows Shell 中內容相關性功能表的內容。所謂內容相關性功能表,即當使用者用滑鼠的 2 號按鈕(一般是滑鼠右鍵)單擊或拖動某個對象時系統顯示的一個彈出式菜單。如果不加擴充,Windows 在內容相關性功能表中將只包含對被單擊或拖動的對象適用的命令。
拖放處理常式實際上執行的也是一些內容相關性功能表的處理。當使用者將某個對象拖至一新位置後放下時系統將調用它們。
屬性工作表處理常式同樣涉及到內容相關性功能表。大多數內容相關性功能表中都包含有一項屬性(Properties)命令,選擇該命令將顯示選取的物件的屬性工作表。屬性工作表由一些被稱為標籤頁(page)的重疊的視窗組成,其中含有某個對象的有關資訊。屬性工作表處理常式的作用就在與此,它可以向系統已定義的屬性工作表中加入一些自訂的標籤頁,或者取代控制台應用程式的屬性工作表中的某些頁。
表徵圖處理常式管理的是代表檔案對象的表徵圖。在 Shell 的名字空間中,系統用表徵圖來代表檔案。預設情況下,對有相同副檔名的檔案,系統將使用相同的表徵圖。表徵圖處理常式可以使此預設設定無效,並可給感興趣的任何特定的檔案對象設定不同的表徵圖。當然,它也可以給屬於同一類的所有檔案增加與系統預設值不同的表徵圖。
資料處理程式在系統中的對象發生拖動操作時起作用,它們提供可以傳給 OLE DoDragDrop 函數的與特定類型相關的 IDataobject 介面。
放置處理常式也與系統的拖放支援有關,它可以為那些能接收拖放對象的檔案增加某些特定種類的拖動行為。
按照它們的功能,這七種 Shell 擴充程式可以分成兩組,第一組擴充程式包括內容相關性功能表處理常式、表徵圖處理常式、資料處理程式、屬性工作表處理常式和放置處理常式,它們可以用於每一種類型的檔案。第二組 Shell 擴充程式則與系統的檔案操作(如移動、拷貝、改名等等)相聯絡,包括拷貝鉤子處理常式和拖放處理常式。