WDF 架構
WDF 提供驅動程式的物件型介面。 架構定義的物件介面包含:
物件方法
方法是驅動程式可以呼叫的函式,以在物件上執行作業,或取得或設定物件屬性。 方法命名為 WdfObjectAction,其中 Object 描述物件, 而 Action 會指出函式的功能。 例如, WdfDeviceCreate 會建立裝置物件。
物件事件回呼函式
事件回呼函式是驅動程式所提供的函式。 每個事件回呼函式都會與物件上可能發生的特定事件相關聯。 架構會在發生相關聯的事件時呼叫事件回呼函式。 依照慣例,事件回呼函式的預留位置稱為 EvtObjectEvent,不過您可以為驅動程式中選擇的任何回呼命名。 例如,驅動程式會註冊 EvtDeviceD0Entry 事件回呼,以在裝置進入工作狀態時收到通知。
物件屬性
屬性是儲存在 物件內的值,而且驅動程式可以 取得 (,也就是取得) 並 設定 (,也就是變更) 。 在許多情況下,屬性會直接對應至對應 WDM 物件中的欄位。 無法失敗的屬性會命名為Wdf物件GetValue和Wdf物件集值,而可能失敗的屬性會命名為Wdf物件擷取值和Wdf物件指派值。 物件描述 物件 , 而 Value 會識別函式設定或傳回的資料。 例如, WdfDeviceGetDriver 會傳回與裝置物件相關聯的驅動程式物件控制碼。
物件控制碼
架構型驅動程式永遠不會直接存取架構物件。 相反地,驅動程式會接收物件控制碼,它可以傳遞至物件的方法。
架構會定義架構型驅動程式使用的數種物件類型:
架構驅動程式物件代表每個驅動程式。
架構裝置物件代表驅動程式支援的每個裝置。
架構佇列物件 代表接收裝置 I/O 要求的 I/O 佇列。
架構要求物件 代表每個 I/O 佇列接收的 I/O 要求。
如需架構所定義之所有物件的清單,請參閱 Framework 物件的摘要。