SetProcessValidCallTargets 関数 (memoryapi.h)

コントロール フロー ガード (CFG) に有効な間接呼び出し先の一覧を提供し、有効とマークするかどうかを指定します。 有効な呼び出し先情報は、仮想メモリ範囲 (範囲の開始とサイズ) に対するオフセットの一覧として提供されます。 指定された呼び出し先は、16 バイトのアラインメントで昇順にする必要があります。

構文

BOOL SetProcessValidCallTargets(
  [in]      HANDLE                hProcess,
  [in]      PVOID                 VirtualAddress,
  [in]      SIZE_T                RegionSize,
  [in]      ULONG                 NumberOfOffsets,
  [in, out] PCFG_CALL_TARGET_INFO OffsetInformation
);

パラメーター

[in] hProcess

ターゲット プロセスへのハンドル。

[in] VirtualAddress

呼び出し先が有効とマークされている仮想メモリ領域の開始。 メモリ領域は、実行可能メモリ 保護定数のいずれかを使用して割り当てる必要があります。

[in] RegionSize

仮想メモリ領域のサイズ。

[in] NumberOfOffsets

仮想メモリ範囲に対する相対オフセットの数。

[in, out] OffsetInformation

仮想メモリ範囲に対する相対オフセットとフラグの一覧。

戻り値

操作 が成功した場合は TRUE。それ以外の場合は FALSE。 この関数のエラー値を取得するには、 GetLastError を呼び出します。

解説

制御フロー ガードがターゲット プロセスに対して有効になっていない場合、この関数は成功しません。 これは、 GetProcessMitigationPolicy を使用して確認できます。

要件

   
サポートされている最小のクライアント Windows 10 [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2016 [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー memoryapi.h (Windows.h、Memoryapi.h を含む)
Library WindowsApp.lib
[DLL] Kernelbase.dll