estrutura SAFER_CODE_PROPERTIES_V2 (winsafer.h)
A estrutura SAFER_CODE_PROPERTIES contém informações de imagem de código e critérios a serem verificados na imagem de código. Uma matriz de estruturas SAFER_CODE_PROPERTIES é passada para a função SaferIdentifyLevel .
SAFER_CODE_PROPERTIES_V2 é uma redefinição de SAFER_CODE_PROPERTIES e é uma versão estendida do SAFER_CODE_PROPERTIES_V1 porque inclui novos membros para pacotes de aplicativos da Windows Store. Os chamadores binários existentes podem distinguir qual versão verificando o membro cbSize .
Sintaxe
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;
Membros
cbSize
O tamanho dessa estrutura em bytes. Isso é usado para compatibilidade futura e com versões anteriores.
dwCheckFlags
Os tipos de critérios considerados ao avaliar essa estrutura. Alguns sinalizadores poderão ser ignorados silenciosamente se alguns ou todos os elementos de estrutura associados não forem fornecidos. Especificar zero para esse parâmetro faz com que todo o conteúdo da estrutura seja ignorado.
A tabela a seguir mostra os valores possíveis. Esses valores podem ser combinados usando uma operação OR bit a bit.
ImagePath
Uma cadeia de caracteres que especifica o caminho totalmente qualificado e o nome do arquivo a ser usado para verificações de discriminação com base no caminho. O caminho da imagem também é usado para abrir e ler o arquivo para identificar quaisquer outros critérios de discriminação não fornecidos nessa estrutura. Esse membro pode ser NULL; no entanto, se o membro dwCheckFlags incluir SAFER_CRITERIA_AUTHENTICODE, esse membro ou o membro hImageFileHandle deverá ser definido.
hImageFileHandle
Um identificador de arquivo para uma imagem de código com pelo menos GENERIC_READ acesso. O identificador é usado em vez de reabrir explicitamente o arquivo para calcular critérios de discriminação não fornecidos nessa estrutura. Esse membro pode ser NULL; no entanto, se dwCheckFlags incluir SAFER_CRITERIA_AUTHENTICODE, esse membro ou o membro ImagePath deverão ser definidos.
UrlZoneId
A Internet predeterminada Explorer zonas de segurança. As seguintes zonas são definidas:
- URLZONE_LOCAL_MACHINE
- URLZONE_INTRANET
- URLZONE_TRUSTED
- URLZONE_INTERNET
- URLZONE_UNTRUSTED
ImageHash[SAFER_MAX_HASH_SIZE]
O hash pré-calculado da imagem. O hash fornecido será interpretado como válido se o membro ImageSize e o membro dwImageHashSize forem diferentes de zero e o membro HashAlgorithm contiver um algoritmo de hash válido de Wincrypt.h.
Se o hash fornecido não atender a essas condições, o hash será recomputado automaticamente por:
- Usando o membro ImageSize e o membro pByteBlock se ambos forem diferentes de zero.
- Usando o membro hImageFileHandle se ele não for NULL.
- Abrir e usar o membro ImagePath se ele não for NULL.
dwImageHashSize
O tamanho em bytes do membro ImageHash .
ImageSize
O tamanho em bytes do membro pByteBlock . Esse membro não será usado se o membro pByteBlock for NULL.
HashAlgorithm
O algoritmo de hash usado para criar o membro ImageHash .
pByteBlock
O bloco de memória que contém a imagem do código que está sendo verificado. Esse membro é opcional. Se esse membro for especificado, o membro ImageSize também deverá ser fornecido.
hWndParent
Os argumentos usados para a verificação do certificado do signatário authenticode. Esses argumentos são passados para a função WinVerifyTrust e controlam a interface do usuário que solicita que o usuário aceite ou rejeite certificados confiados.
dwWVTUIChoice
Indica o tipo de interface do usuário usada. A tabela a seguir mostra os valores possíveis.
Valor | Significado |
---|---|
|
Exibir toda a interface do usuário. |
|
Não exibir nenhuma interface do usuário. |
|
Exibir interface do usuário somente se não houver erros. |
|
Exibir interface do usuário somente se ocorrer um erro. |
PackageMoniker
A propriedade moniker do pacote. Para uso por aplicativos da Windows Store.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Este membro não está disponível.
PackagePublisher
A propriedade do editor do pacote. Para uso por aplicativos da Windows Store.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Este membro não está disponível.
PackageName
A propriedade de nome do pacote. Para uso por aplicativos da Windows Store.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Este membro não está disponível.
PackageVersion
A propriedade de versão do pacote. Para uso por aplicativos da Windows Store.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Este membro não está disponível.
PackageIsFramework
O pacote é um pacote de estrutura. Para uso por aplicativos da Windows Store.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Este membro não está disponível.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Cabeçalho | winsafer.h |