SAFER_CODE_PROPERTIES_V1 構造体 (winsafer.h)
SAFER_CODE_PROPERTIES_V1構造体には、コード イメージの情報と、コード イメージで確認する条件が含まれています。 SAFER_CODE_PROPERTIES_V1構造体の配列が SaferIdentifyLevel 関数に渡されます。
SAFER_CODE_PROPERTIES_V1には、Windows ストア アプリ パッケージの新しいメンバーは含まれません。 既存のバイナリ呼び出し元は、 cbSize メンバーを確認することで、どのバージョンを区別できます。
構文
typedef struct _SAFER_CODE_PROPERTIES_V1 {
DWORD cbSize;
DWORD dwCheckFlags;
LPCWSTR ImagePath;
HANDLE hImageFileHandle;
DWORD UrlZoneId;
BYTE ImageHash[SAFER_MAX_HASH_SIZE];
DWORD dwImageHashSize;
LARGE_INTEGER ImageSize;
ALG_ID HashAlgorithm;
LPBYTE pByteBlock;
HWND hWndParent;
DWORD dwWVTUIChoice;
} SAFER_CODE_PROPERTIES_V1, *PSAFER_CODE_PROPERTIES_V1;
メンバー
cbSize
この構造体のサイズ (バイト単位)。 これは、将来および下位互換性のために使用されます。
dwCheckFlags
この構造を評価するときに考慮される条件の種類。 関連付けられている構造体要素の一部またはすべてが指定されていない場合、一部のフラグは無視されることがあります。 このパラメーターに 0 を指定すると、構造体の内容全体が無視されます。
次の表に、それぞれの値を示します。 これらの値は、ビットごとの OR 演算を使用して結合できます。
ImagePath
パスに基づく判別チェックに使用する完全修飾パスとファイル名を指定する文字列。 イメージ パスは、ファイルを開いて読み取るためにも使用され、この構造で指定されていない他の判別基準を識別します。 このメンバーは NULL にすることができます。ただし、 dwCheckFlags メンバーに SAFER_CRITERIA_AUTHENTICODEが含まれている場合は、このメンバーまたは hImageFileHandle メンバーを設定する必要があります。
hImageFileHandle
少なくともGENERIC_READアクセス権を持つコード イメージへのファイル ハンドル。 この構造体で指定されていない判別基準を計算するためにファイルを明示的に再度開く代わりに、ハンドルが使用されます。 このメンバーは NULL にすることができます。ただし、 dwCheckFlags に SAFER_CRITERIA_AUTHENTICODEが含まれている場合は、このメンバーまたは ImagePath メンバーを設定する必要があります。
UrlZoneId
事前に定義されたインターネット エクスプローラー セキュリティ ゾーン。 次のゾーンが定義されています。
- URLZONE_LOCAL_MACHINE
- URLZONE_INTRANET
- URLZONE_TRUSTED
- URLZONE_INTERNET
- URLZONE_UNTRUSTED
ImageHash[SAFER_MAX_HASH_SIZE]
画像の事前計算済みハッシュ。 ImageSize メンバーと dwImageHashSize メンバーの両方が 0 以外で、HashAlgorithm メンバーに Wincrypt.h からの有効なハッシュ アルゴリズムが含まれている場合、指定されたハッシュは有効と解釈されます。
指定されたハッシュがこれらの条件を満たさなければ、ハッシュは次の方法で自動的に再計算されます。
- ImageSize メンバーと pByteBlock メンバーの使用 (両方が 0 以外の場合)。
- hImageFileHandle メンバーが NULL でない場合は、そのメンバーを使用します。
- ImagePath メンバーを開いて使用します (NULL でない場合)。
dwImageHashSize
ImageHash メンバーのサイズ (バイト単位)。
ImageSize
pByteBlock メンバーのサイズ (バイト単位)。 pByteBlock メンバーが NULL の場合、このメンバーは使用されません。
HashAlgorithm
ImageHash メンバーの作成に使用されるハッシュ アルゴリズム。
pByteBlock
チェック対象のコードのイメージを含むメモリ ブロック。 このメンバーは省略可能です。 このメンバーを指定する場合は、 ImageSize メンバーも指定する必要があります。
hWndParent
Authenticode 署名者証明書の検証に使用される引数。 これらの引数は WinVerifyTrust 関数に渡され、ユーザーに、信頼された証明書の受け入れまたは拒否を求める UI を制御します。
dwWVTUIChoice
使用される UI の種類を示します。 次の表に、それぞれの値を示します。
[値] | 意味 |
---|---|
|
すべての UI を表示します。 |
|
UI を表示しません。 |
|
エラーがない場合にのみ UI を表示します。 |
|
エラーが発生した場合にのみ UI を表示します。 |
注釈
SAFER_CODE_PROPERTIES 再定義され、Windows ストア アプリで 構造体を使用できるようにする追加のメンバーが含まれています。 cbSize メンバーで、構造体の適切なサイズと、SAFER_CODE_PROPERTIES構造体とSAFER_CODE_PROPERTIES_V1構造体のどちらを使用する必要があるかを確認します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
Header | winsafer.h |