次の方法で共有


PSS_CAPTURE_FLAGS列挙 (processsnapshot.h)

PssCaptureSnapshot でキャプチャされる内容を指定するフラグ。

構文

typedef enum {
  PSS_CAPTURE_NONE = 0x00000000,
  PSS_CAPTURE_VA_CLONE = 0x00000001,
  PSS_CAPTURE_RESERVED_00000002 = 0x00000002,
  PSS_CAPTURE_HANDLES = 0x00000004,
  PSS_CAPTURE_HANDLE_NAME_INFORMATION = 0x00000008,
  PSS_CAPTURE_HANDLE_BASIC_INFORMATION = 0x00000010,
  PSS_CAPTURE_HANDLE_TYPE_SPECIFIC_INFORMATION = 0x00000020,
  PSS_CAPTURE_HANDLE_TRACE = 0x00000040,
  PSS_CAPTURE_THREADS = 0x00000080,
  PSS_CAPTURE_THREAD_CONTEXT = 0x00000100,
  PSS_CAPTURE_THREAD_CONTEXT_EXTENDED = 0x00000200,
  PSS_CAPTURE_RESERVED_00000400 = 0x00000400,
  PSS_CAPTURE_VA_SPACE = 0x00000800,
  PSS_CAPTURE_VA_SPACE_SECTION_INFORMATION = 0x00001000,
  PSS_CAPTURE_IPT_TRACE = 0x00002000,
  PSS_CAPTURE_RESERVED_00004000,
  PSS_CREATE_BREAKAWAY_OPTIONAL = 0x04000000,
  PSS_CREATE_BREAKAWAY = 0x08000000,
  PSS_CREATE_FORCE_BREAKAWAY = 0x10000000,
  PSS_CREATE_USE_VM_ALLOCATIONS = 0x20000000,
  PSS_CREATE_MEASURE_PERFORMANCE = 0x40000000,
  PSS_CREATE_RELEASE_SECTION = 0x80000000
} PSS_CAPTURE_FLAGS;

定数

 
PSS_CAPTURE_NONE
値: 0x00000000
何もキャプチャしません。
PSS_CAPTURE_VA_CLONE
値: 0x00000001
プロセス内のすべての複製可能なページのスナップショットをキャプチャします。 複製には、すべての MEM_PRIVATE リージョンと、共有可能なすべてのセクション (MEM_MAPPEDMEM_IMAGE) が含まれます。 CreateFileMapping を使用して作成されたすべての Win32 セクションは共有可能です。
PSS_CAPTURE_RESERVED_00000002
値: 0x00000002
(使用しないでください。)
PSS_CAPTURE_HANDLES
値: 0x00000004
ハンドル テーブルをキャプチャします (ハンドル値のみ)。
PSS_CAPTURE_HANDLE_NAME_INFORMATION
値: 0x00000008
各ハンドルの名前情報をキャプチャします。
PSS_CAPTURE_HANDLE_BASIC_INFORMATION
値: 0x00000010
HandleCountPointerCountGrantedAccess などの基本的なハンドル情報をキャプチャします。
PSS_CAPTURE_HANDLE_TYPE_SPECIFIC_INFORMATION
値: 0x00000020
サポートされているオブジェクト型の型固有の情報をキャプチャします。 ProcessThreadEventMutantSection。
PSS_CAPTURE_HANDLE_TRACE
値: 0x00000040
ハンドル トレース テーブルをキャプチャします。
PSS_CAPTURE_THREADS
値: 0x00000080
スレッド情報をキャプチャします (ID のみ)。
PSS_CAPTURE_THREAD_CONTEXT
値: 0x00000100
各スレッドのコンテキストをキャプチャします。
PSS_CAPTURE_THREAD_CONTEXT_EXTENDED
値: 0x00000200
各スレッドの拡張コンテキストをキャプチャします (例: CONTEXT_XSTATE)。
PSS_CAPTURE_RESERVED_00000400
値: 0x00000400
(使用しないでください。)
PSS_CAPTURE_VA_SPACE
値: 0x00000800
仮想アドレス空間のスナップショットをキャプチャします。 VA 空間は、 MEMORY_BASIC_INFORMATION 構造体の配列としてキャプチャされます。 このフラグは、ページの内容をキャプチャしません。
PSS_CAPTURE_VA_SPACE_SECTION_INFORMATION
値: 0x00001000
MEM_IMAGEリージョンとMEM_MAPPEDリージョンでは、セクションをバックアップするファイルへのパスをダンプします (GetMappedFileName が返すパスと同じです)。 MEM_IMAGEリージョンの場合は、次もダンプします。



  • IMAGE_NT_HEADERS。FileHeader.TimeDateStamp



  • IMAGE_NT_HEADERS。OptionalHeader.SizeOfImage



  • IMAGE_NT_HEADERS。OptionalHeader.ImageBase



  • IMAGE_NT_HEADERS。OptionalHeader.CheckSum



プロセス ハンドルには、PROCESS_VM_READアクセス権が必要です。

警告 このオプションは、 PSS_CAPTURE_VA_SPACE が指定されている場合にのみ有効です。

 
PSS_CAPTURE_IPT_TRACE
値: 0x00002000
PSS_CREATE_BREAKAWAY_OPTIONAL
値: 0x04000000
ブレークウェイは省略可能です。 複製プロセスが中断として作成できない場合は、ジョブ内にまだ作成されます。 このフラグは、PSS_CREATE_FORCE_BREAKAWAYまたはPSS_CREATE_BREAKAWAYのいずれかと組み合わせて指定する必要があります。
PSS_CREATE_BREAKAWAY
値: 0x08000000
複製は親プロセスのジョブから切り離されます。 これは、 CreateProcess フラグ CREATE_BREAKAWAY_FROM_JOBと同じです。
PSS_CREATE_FORCE_BREAKAWAY
値: 0x10000000
複製は、親プロセスのジョブを強制的に切断します。 これは、Tcb 特権の呼び出し元に対してのみ許可されます。
PSS_CREATE_USE_VM_ALLOCATIONS
値: 0x20000000
この機能では、永続的または一時的な割り当てにプロセス ヒープを使用しないでください。 例外レポート パス (ヒープが破損している可能性がある) でのスナップショットの作成など、特定のコンテキストでヒープを使用することは望ましくない場合があります。
PSS_CREATE_MEASURE_PERFORMANCE
値: 0x40000000
施設のパフォーマンスを測定します。 パフォーマンス カウンターは、pssQuerySnapshot を使用して、PSS_QUERY_INFORMATION_CLASSのPSS_QUERY_PERFORMANCE_COUNTERS情報クラスを使用して取得できます。
PSS_CREATE_RELEASE_SECTION
値: 0x80000000
仮想アドレス (VA) 複製プロセスは、基になるイメージへの参照を保持しません。 これにより、VA 複製プロセスで QueryFullProcessImageName などの関数が失敗します。

重要  

PSS_CAPTURE_VA_CLONEが指定されていない限り、このフラグは無効です。


 

注釈

PSS_CREATE_FORCE_BREAKAWAYPSS_CREATE_BREAKAWAYの両方が指定されている場合は、PSS_CREATE_FORCE_BREAKAWAYが優先されます。

要件

要件
サポートされている最小のクライアント Windows 8.1 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2012 R2 [デスクトップ アプリのみ]
Header processsnapshot.h

こちらもご覧ください

プロセス スナップショット