PsReplaceSiloContext 関数 (ntddk.h)
このルーチンは、 サイロにオブジェクトを挿入します。
構文
NTSTATUS PsReplaceSiloContext(
[in] PESILO Silo,
[in] ULONG ContextSlot,
[in] PVOID NewSiloContext,
[optional] PVOID *OldSiloContext
);
パラメーター
[in] Silo
サイロへのポインター。 このパラメーターは必須であり、 NULL にすることはできません。
[in] ContextSlot
PsAllocSiloContextSlot ルーチンによって割り当てられたスロット。
[in] NewSiloContext
PsCreateSiloContext ルーチンによって作成されたオブジェクトへのポインター。 オブジェクトは、このルーチンで指定されたものと同じサイロ ポインターを使用して作成する必要があります。 このパラメーターは必須であり、 NULL にすることはできません。
[optional] OldSiloContext
既存のオブジェクトのアドレスを受け取る呼び出し元によって割り当てられた変数へのポインター。 このパラメーターは省略可能であり、 NULL にすることができます。 パラメーターが受け取るアドレスは NULL にすることができます。
戻り値
次の NT 状態コードが返されます。
リターン コード | 説明 |
---|---|
|
挿入を実行するリソースがシステムにありません。 これはエラー コードです。 |
|
スロットは読み取り専用であり、変更できません。 これはエラー コードです。 |
|
操作は正常に完了しました。 |
注釈
PsReplaceSiloContext を正常に呼び出すと、NewSiloContext の参照カウントがインクリメントされます。 PsReplaceSiloContext が失敗した場合、参照カウントは変更されません。 どちらの場合も、 PsReplaceSiloContext の呼び出し元は PsDereferenceSiloContext を呼び出して PsReplaceSiloContext オブジェクトをデクリメントする必要があります。 PsReplaceSiloContext が失敗し、OldSiloContext パラメーターが NULL ではなく NULL を指していない場合、NULL は参照先ポインターです。 ルーチンが完了したら、呼び出し元は PsDereferenceSiloContext を呼び出して 、NULL パラメーターが指すオブジェクトをデクリメントする必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 Version 1607 |
サポートされている最小のサーバー | Windows Server 2016 |
対象プラットフォーム | Windows |
ヘッダー | ntddk.h |