struttura SAFER_CODE_PROPERTIES_V2 (winsafer.h)

La struttura SAFER_CODE_PROPERTIES contiene informazioni sull'immagine del codice e criteri da controllare nell'immagine del codice. Una matrice di strutture SAFER_CODE_PROPERTIES viene passata alla funzione SaferIdentifyLevel .

SAFER_CODE_PROPERTIES_V2 è una ridefinizione di SAFER_CODE_PROPERTIES ed è una versione estesa di SAFER_CODE_PROPERTIES_V1 perché include nuovi membri per i pacchetti di app di Windows Store. I chiamanti binari esistenti possono distinguere la versione controllando il membro cbSize .

Sintassi

typedef struct _SAFER_CODE_PROPERTIES_V2 {
  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;
  LPCWSTR       PackageMoniker;
  LPCWSTR       PackagePublisher;
  LPCWSTR       PackageName;
  ULONG64       PackageVersion;
  BOOL          PackageIsFramework;
} SAFER_CODE_PROPERTIES_V2, *PSAFER_CODE_PROPERTIES_V2;

Members

cbSize

La dimensione di questa struttura in byte. Viene usato per compatibilità futura e con le versioni precedenti.

dwCheckFlags

Tipi di criteri considerati durante la valutazione di questa struttura. Alcuni flag potrebbero essere ignorati automaticamente se alcuni o tutti gli elementi della struttura associati non vengono forniti. Se si specifica zero per questo parametro, il contenuto dell'intera struttura viene ignorato.

Nella tabella seguente sono illustrati i possibili valori. Questi valori possono essere combinati usando un'operazione OR bit per bit.

Valore Significato
SAFER_CRITERIA_IMAGEPATH
0x00001
Controllare il percorso dell'immagine del codice.
SAFER_CRITERIA_IMAGEHASH
0x00004
Controllare l'hash del codice.
SAFER_CRITERIA_AUTHENTICODE
0x00008
Controllare la firma Authenticode. Se questo valore viene utilizzato, è necessario impostare il membro hImageFileHandle o il membro ImagePath .
SAFER_CRITERIA_URLZONE
0x00010
Controllare l'URL dell'origine.
SAFER_CRITERIA_IMAGEPATH_NT
0x01000
Controllare il percorso dell'immagine di Windows NT.
SAFER_CRITERIA_APPX_PACKAGE
0x00020
Verificare la presenza di un pacchetto di app di Windows Store. Per l'uso da parte delle app di Windows Store.

ImagePath

Stringa che specifica il percorso completo e il nome file da utilizzare per i controlli di discriminazione in base al percorso. Il percorso dell'immagine viene usato anche per aprire e leggere il file per identificare eventuali altri criteri di discriminazione non specificati in questa struttura. Questo membro può essere NULL; Tuttavia, se il membro dwCheckFlags include SAFER_CRITERIA_AUTHENTICODE, è necessario impostare questo membro o il membro hImageFileHandle .

hImageFileHandle

Handle di file per un'immagine di codice con almeno GENERIC_READ accesso. L'handle viene usato invece di riaprire in modo esplicito il file per calcolare i criteri di discriminazione non specificati in questa struttura. Questo membro può essere NULL; Tuttavia, se dwCheckFlags include SAFER_CRITERIA_AUTHENTICODE, è necessario impostare questo membro o il membro ImagePath .

UrlZoneId

Aree di sicurezza predeterminate di Internet Explorer. Sono definite le zone seguenti:

  • URLZONE_LOCAL_MACHINE
  • URLZONE_INTRANET
  • URLZONE_TRUSTED
  • URLZONE_INTERNET
  • URLZONE_UNTRUSTED
Questo membro può essere impostato su 0.

ImageHash[SAFER_MAX_HASH_SIZE]

Hash precalcorato dell'immagine. L'hash fornito viene interpretato come valido se sia il membro ImageSize che il membro dwImageHashSize sono diversi da zero e il membro HashAlgorithm contiene un algoritmo hash valido di Wincrypt.h.

Se l'hash fornito non soddisfa queste condizioni, l'hash verrà ricalcorato automaticamente da:

  • Utilizzando il membro ImageSize e il membro pByteBlock se entrambi sono diversi da zero.
  • Se non è NULL, utilizzare il membro hImageFileHandle.
  • Apertura e utilizzo del membro ImagePath se non è NULL.

dwImageHashSize

Dimensioni in byte del membro ImageHash .

ImageSize

Dimensione in byte del membro pByteBlock . Questo membro non viene utilizzato se il membro pByteBlock è NULL.

HashAlgorithm

Algoritmo hash usato per creare il membro ImageHash .

pByteBlock

Blocco di memoria contenente l'immagine del codice da controllare. Questo membro è facoltativo. Se questo membro viene specificato, è necessario specificare anche il membro ImageSize .

hWndParent

Argomenti usati per la verifica del certificato del firmatario Authenticode. Questi argomenti vengono passati alla funzione WinVerifyTrust e controllano l'interfaccia utente che chiede all'utente di accettare o rifiutare i certificati affidati.

dwWVTUIChoice

Indica il tipo di interfaccia utente utilizzata. Nella tabella seguente sono illustrati i possibili valori.

Valore Significato
WTD_UI_ALL
Visualizza tutta l'interfaccia utente.
WTD_UI_NONE
Non visualizzare alcuna interfaccia utente.
WTD_UI_NOBAD
Visualizzare l'interfaccia utente solo se non sono presenti errori.
WTD_UI_NOGOOD
Visualizzare l'interfaccia utente solo se si verifica un errore.

PackageMoniker

Proprietà del moniker del pacchetto. Per l'uso da parte delle app di Windows Store.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo membro non è disponibile.

PackagePublisher

Proprietà dell'autore del pacchetto. Per l'uso da parte delle app di Windows Store.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo membro non è disponibile.

PackageName

Proprietà del nome del pacchetto. Per l'uso da parte delle app di Windows Store.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo membro non è disponibile.

PackageVersion

Proprietà della versione del pacchetto. Per l'uso da parte delle app di Windows Store.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo membro non è disponibile.

PackageIsFramework

Il pacchetto è un pacchetto framework. Per l'uso da parte delle app di Windows Store.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo membro non è disponibile.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Intestazione winsafer.h