AcxObjectBagAddGuid 関数 (acxmisc.h)
AcxObjectBagAddGuid 関数は、既存の初期化された AcxObjectBag に Guid データを追加します。
構文
NTSTATUS AcxObjectBagAddGuid(
ACXOBJECTBAG ObjectBag,
PCUNICODE_STRING ValueName,
GUID Value
);
パラメーター
ObjectBag
初期化された ObjectBag ACX オブジェクト。 詳細については、「 ACX - ACX オブジェクトの概要」を参照してください。
ValueName
値へのアクセスに使用される値の名前。
Value
ObjectBag に追加する値。
戻り値
STATUS_SUCCESS
呼び出しが成功した場合は を返します。 それ以外の場合は、適切なエラー コードを返します。 詳細については、「 NTSTATUS 値の使用」を参照してください。
解説
例
次のコードは、AcxObjectBagAddGuid の使用を示しています。
// Object bag
//
// This obj-bag config setting is shared by all composite/circuit templates.
ACX_OBJECTBAG_CONFIG objBagCfg;
ACX_OBJECTBAG_CONFIG_INIT(&objBagCfg);
WDF_OBJECT_ATTRIBUTES attributes;
WDF_OBJECT_ATTRIBUTES_INIT(&attributes);
attributes.ParentObject = AcxGetManager(NULL);
ACXOBJECTBAG objBag = NULL;
RETURN_NTSTATUS_IF_FAILED(AcxObjectBagCreate(&attributes, &objBagCfg, &objBag));
// Enable deletion of the object bag when the function completes and goes out of scope
auto objBag_scope = scope_exit([&objBag]() {
if (objBag != NULL)
{
WdfObjectDelete(objBag);
}
});
//
// Add a test unsigned int 4 bytes to the object bag
//
RETURN_NTSTATUS_IF_FAILED(ObjBagAddTestUI4(objBag, 0));
//
// Add unique circuit ID to the object bag
// This unique Id will be picked up by DSP circuit
//
DECLARE_CONST_ACXOBJECTBAG_SYSTEM_PROPERTY_NAME(UniqueID);
GUID uniqueID = { 0 };
RETURN_NTSTATUS_IF_FAILED(RtlGUIDFromString(&circuit_IDs[compositeType], &uniqueID));
RETURN_NTSTATUS_IF_FAILED(AcxObjectBagAddGuid(objBag, &UniqueID, uniqueID));
ACX の要件
最小 ACX バージョン: 1.0
ACX バージョンの詳細については、「 ACX バージョンの概要」を参照してください。
要件
要件 | 値 |
---|---|
Header | acxmisc.h |
IRQL | PASSIVE_LEVEL |