共用方式為


IWDFDriver::CreateWdfObject 方法 (wudfddi.h)

[警告: UMDF 2 是最新版本的 UMDF,並取代 UMDF 1。 所有新的UMDF驅動程式都應該使用UMDF 2撰寫。 未將新功能新增至 UMDF 1,而且較新版本的 Windows 10 上對 UMDF 1 的支援有限。 通用 Windows 驅動程式必須使用 UMDF 2。 如需詳細資訊,請參閱 開始使用 UMDF。]

CreateWdfObject 方法會從父 WDF 物件建立自定義 (或使用者) WDF 物件。

語法

HRESULT CreateWdfObject(
  [in, optional] IUnknown   *pCallbackInterface,
  [in, optional] IWDFObject *pParentObject,
  [out]          IWDFObject **ppWdfObject
);

參數

[in, optional] pCallbackInterface

架構用來判斷驅動程式在新建立自定義物件上訂閱的對象相關事件回呼函式 IUnknown 介面指標。 這個參數是選擇性的。 如果驅動程式不需要通知,驅動程式可以傳遞 NULL。 如果驅動程式通過有效的指標,架構會在 IObjectCleanup 介面的 IUnknown 介面上呼叫 QueryInterface。 如果架構取得驅動程式的 IObjectCleanup 介面,架構接著可以呼叫驅動程式的 IObjectCleanup::OnCleanup 方法來通知驅動程式已清除自定義物件。

[in, optional] pParentObject

父 WDF 物件的 IWDFObject 介面指標。 如果 NULL,驅動程式物件會變成預設父代。

[out] ppWdfObject

緩衝區的指標,接收新建立 WDF 物件的 IWDFObject 介面指標。

傳回值

如果作業成功,CreateWdfObject 會傳回S_OK。 否則,此方法會傳回 Winerror.h 中定義的其中一個錯誤碼。

言論

驅動程式可以呼叫 createWdfObject ,以建立一般 架構基底物件 供自己使用。 驅動程式可以建立內容記憶體的關聯、指派父物件,以及註冊 IObjectCleanup 介面。 架構接著會呼叫 IObjectCleanup::OnCleanup 方法來清除子物件。

如果未在 pParentObject 參數 指定父對象,驅動程式就會成為預設父代。 因此,刪除驅動程序物件時,架構會清除子物件。

如果已指派父物件,則會在刪除父物件時刪除子物件。 換句話說,子物件的存留期會限定在父物件的存留期內。

如果驅動程式必須在刪除父物件之前清除子對象,驅動程式可以呼叫 IWDFObject::D eleteWdfObject 方法。

要求

要求 價值
終止支援 UMDF 2.0 和更新版本中無法使用。
目標平臺 桌面
最低 UMDF 版本 1.5
標頭 wudfddi.h (包括 Wudfddi.h)
DLL WUDFx.dll

另請參閱

IObjectCleanup

IObjectCleanup::OnCleanup

IWDFDriver

IWDFObject

IWDFObject::D eleteWdfObject