共用方式為


KsCreateDefaultAllocatorEx 函式 (ks.h)

建立使用指定記憶體集區的預設配置器,並使用內部分派數據表將 IoGetCurrentIrpStackLocation(pIrp)->FileObject 與這個配置器產生關聯。KSDISPATCH_TABLE。

語法

KSDDKAPI NTSTATUS KsCreateDefaultAllocatorEx(
  [in]           PIRP                     Irp,
  [in, optional] PVOID                    InitializeContext,
  [in, optional] PFNKSDEFAULTALLOCATE     DefaultAllocate,
  [in, optional] PFNKSDEFAULTFREE         DefaultFree,
  [in, optional] PFNKSINITIALIZEALLOCATOR InitializeAllocator,
  [in, optional] PFNKSDELETEALLOCATOR     DeleteAllocator
);

參數

[in] Irp

包含 IRP,其中包含要處理的配置器建立要求。

[in, optional] InitializeContext

選擇性地包含要與外部配置器搭配使用的內容。 這隻會在建立配置器內容時做為選擇性 InitializeAllocator 回呼的初始化內容。 否則不會使用 參數。 如果未提供外部設定器,此參數必須設定為 NULL

[in, optional] DefaultAllocate

選擇性地包含用來取代預設集區配置的外部配置函式。 如果這是 NULL,則會使用預設配置。

[in, optional] DefaultFree

選擇性地包含用來取代預設集區配置的外部可用函式。 如果未提供外部設定器,此參數必須設定為 NULL

[in, optional] InitializeAllocator

選擇性地包含傳遞 InitializeContext 參數的外部配置器初始化函式。 此函式預期會根據配置器框架傳回配置器內容。 如果未提供外部設定器,此參數必須設定為 NULL

[in, optional] DeleteAllocator

選擇性地包含用於外部配置器的外部配置器刪除函式。 如果未提供外部設定器,此參數必須設定為 NULL

傳回值

傳回STATUS_SUCCESS,否則預設配置器建立失敗時發生錯誤。 未完成 IRP 或設定 IRP 中的狀態。

言論

呼叫此例程之前,KSCREATE_ITEM_IRP_STORAGE(Irp) 巨集應該傳回此配置器建立專案的 KSOBJECT_CREATE_ITEM 結構的指標。 KsCreateDefaultAllocatorEx 會將 FsContext 設定為指向這個巨集的傳回值。 因此,FsContext 稍後可用於安全性描述元查詢或變更。

您可以在 ks.h中找到 KSCREATE_ITEM_IRP_STORAGE(Irp) 和相關巨集。

要求

要求 價值
目標平臺 普遍
標頭 ks.h (包括 Ks.h)
連結庫 Ks.lib