共用方式為


WMIREGINFOW 結構 (wmistr.h)

WMIREGINFO 結構包含驅動程式提供的資訊,可註冊或更新其數據區塊和事件區塊。

語法

typedef struct {
  ULONG       BufferSize;
  ULONG       NextWmiRegInfo;
  ULONG       RegistryPath;
  ULONG       MofResourceName;
  ULONG       GuidCount;
  WMIREGGUIDW WmiRegGuid[];
} WMIREGINFOW, *PWMIREGINFOW;

成員

BufferSize

指出與此 WMIREGINFO 結構相關聯的 WMI 註冊數據大小總計,如下所示: (sizeof (WMIREGINFO) + (GuidCount * sizeof (WMIREGGUID) + additionaldata) 。 其他數據可能包含區塊的MOF資源名稱、登錄路徑和靜態實例名稱等專案。

NextWmiRegInfo

如果驅動程式代表另一個驅動程序處理 WMI 要求,因為類別驅動程式可能代表迷你類別驅動程式, NextWmiRegInfo 表示此 WMIREGINFO 開頭的位元組位移到包含其他驅動程式 WMI 註冊資訊的下一個 WMIREGINFO 結構。 否則, NextWmiRegInfo 為零。

RegistryPath

指出從這個 結構的開頭到計數 Unicode 字串的位元移,指定傳遞至驅動程式 DriverEntry 例程的登錄路徑。 字串必須對齊 USHORT 界限。 只有當 WMI 註冊要求 (IRP_MN_REGINFO_EX IRP_MN_REGINFO或參數.WMI.DataPath 設定為 WMIREGISTER) 時,才應該設定此成員。

MofResourceName

指出從這個 結構的開頭到計算 Unicode 字串的位元組位移,指定驅動程式映像檔中 MOF 資源的名稱。 字串必須對齊 USHORT 界限。 只有當 WMI 註冊要求 (IRP_MN_REGINFO_EX IRP_MN_REGINFO或參數.WMI.DataPath 設定為 WMIREGISTER) 時,才應該設定此成員。

GuidCount

指出位於 WmiRegGuid 之陣列中的 WMIREGGUID 結構數目。

WmiRegGuid

這是 GuidCount WMIREGGUID 結構的數位。

備註

為了回應將 Parameters.WMI.DataPath 設定為 WMIREGISTER ) 的註冊要求 (IRP_MN_REGINFOIRP_MN_REGINFO_EX,驅動程式會建置至少一個 WMIREGINFO 結構,並將 WMIREGINFO 結構寫入 IrpStack-Parameters.WMI.Buffer> 的緩衝區 WMIREGINFO 結構包含 WMIREGGUID 結構的數位,每個數據區塊或驅動程式所公開的事件區塊各有一個。

如果驅動程式代表另一個驅動程序處理 WMI 要求,它會建置另一個 WMIREGINFO,其中包含另一個驅動程式所公開之每個區塊的 WMIREGGUID 結構數位,將第一個 WMIREGINFONextWmiRegInfo 成員設定為從第一個 WMIREGINFO 開頭到緩衝區中下一個 WMIREGINFO 開頭的位元組位移。 和會將這兩個結構寫入緩衝區。 驅動程式指出呼叫IoCompleteRequest以完成IRP時,WMIREGINFO結構和相關聯數據的總大小。

驅動程式可以使用 () 相同的 WMIREGINFO 結構來移除或更新區塊,以響應參數.WMI.DataPath 設定為 WMIUPDATE) 的更新要求 (IRP_MN_REGINFOIRP_MN_REGINFO_EX。 如果在 WMIREGGUIDFlags 成員中設定WMIREG_FLAG_REMOVE_GUID,WMI 會從驅動程式先前註冊的區塊清單中移除該區塊。 如果WMIREG_FLAG_REMOVE_GUID清楚,只有在其他 WMIREGGUID 成員已變更時,WMI 才會更新該區塊的註冊資訊,否則 WMI 不會變更為該區塊的註冊資訊。

規格需求

需求
標頭 wmistr.h (包含 Wmistr.h)

另請參閱

IRP_MN_REGINFO

IRP_MN_REGINFO_EX

IoCompleteRequest

WMIREGGUID