[WINTRUST_DATA 结构可用于“要求”部分中指定的操作系统。 在后续版本中可能会更改或不可用。
调用 WinVerifyTrust 将必要信息传递到 信任提供程序时,将使用 WINTRUST_DATA 结构。
语法
typedef struct _WINTRUST_DATA {
  DWORD                               cbStruct;
  LPVOID                              pPolicyCallbackData;
  LPVOID                              pSIPClientData;
  DWORD                               dwUIChoice;
  DWORD                               fdwRevocationChecks;
  DWORD                               dwUnionChoice;
  union {
#if ...
    WINTRUST_FILE_INFO_                *pFile;
#else
    struct WINTRUST_FILE_INFO_         *pFile;
#endif
#if ...
    WINTRUST_CATALOG_INFO_             *pCatalog;
#else
    struct WINTRUST_CATALOG_INFO_      *pCatalog;
#endif
#if ...
    WINTRUST_BLOB_INFO_                *pBlob;
#else
    struct WINTRUST_BLOB_INFO_         *pBlob;
#endif
#if ...
    WINTRUST_SGNR_INFO_                *pSgnr;
#else
    struct WINTRUST_SGNR_INFO_         *pSgnr;
#endif
#if ...
    WINTRUST_CERT_INFO_                *pCert;
#else
    struct WINTRUST_CERT_INFO_         *pCert;
#endif
#if ...
    WINTRUST_DETACHED_SIG_INFO_        *pDetachedSig;
#else
    struct WINTRUST_DETACHED_SIG_INFO_ *pDetachedSig;
#endif
  };
  DWORD                               dwStateAction;
  HANDLE                              hWVTStateData;
  WCHAR                               *pwszURLReference;
  DWORD                               dwProvFlags;
  DWORD                               dwUIContext;
  struct WINTRUST_SIGNATURE_SETTINGS_ *pSignatureSettings;
} WINTRUST_DATA, *PWINTRUST_DATA;
成员
cbStruct
此结构的大小(以字节为单位)。
pPolicyCallbackData
指向用于将策略特定数据传递到策略提供程序的数据缓冲区的指针。 此成员可以 NULL。
pSIPClientData
指向用于将 主题接口包(SIP)特定数据传递给 SIP 提供程序的数据缓冲区的指针。 此成员可以 NULL。
dwUIChoice
指定要使用的用户界面类型(UI)。 此成员必须是以下值之一。
| 价值 | 意义 | 
|---|---|
  | 
显示所有 UI。 | 
  | 
不显示 UI。 | 
  | 
不显示任何负 UI。 | 
  | 
不显示任何正 UI。 | 
fdwRevocationChecks
证书吊销检查选项。 可以将此成员设置为将吊销检查添加到所选策略提供程序完成的检查。 此成员必须是以下值之一。
dwUnionChoice
指定要使用的联合成员,因此,将为其验证信任的对象的类型。 此成员必须是以下值之一。
| 价值 | 意义 | 
|---|---|
  | 
使用由 pFile指向的文件。 | 
  | 
使用 pCatalog指向的目录。 | 
  | 
使用 pBlob指向的 BLOB。 | 
  | 
使用 pSgnr指向的 [WINTRUST_SGNR_INFO](/windows/desktop/api/wintrust/ns-wintrust-wintrust_sgnr_info) 结构。 | 
  | 
使用由 pCert指向的证书。 | 
pFile
指向 WINTRUST_FILE_INFO 结构的指针。
pCatalog
指向 WINTRUST_CATALOG_INFO 结构的指针。
pBlob
指向 WINTRUST_BLOB_INFO 结构的指针。
pSgnr
指向 WINTRUST_SGNR_INFO 结构的指针。
pCert
指向 WINTRUST_CERT_INFO 结构的指针。
pDetachedSig
dwStateAction
指定要执行的操作。 这可以是以下值之一。
hWVTStateData
状态数据的句柄。 此成员的内容取决于 dwStateAction 成员的值。
pwszURLReference
保留以供将来使用。 设置为 NULL。
dwProvFlags
指定信任提供程序设置的 DWORD 值。 这可以是以下值中的零个或多个按位组合。
| 价值 | 意义 | 
|---|---|
  | 
信任通过 Internet Explorer 4.0 实现的方式进行验证。 | 
  | 
不使用 Internet Explorer 4.0 链功能。 | 
  | 
不会执行策略提供程序的默认验证(例如 Authenticode的代码签名),并且该证书对所有用法都有效。 | 
  | 
不执行吊销检查。 | 
  | 
吊销检查仅在结束证书上执行。 | 
  | 
吊销检查在整个证书链上执行。 | 
  | 
吊销检查在不包括根证书的整个证书链上执行。 | 
  | 
不支持。 | 
  | 
仅验证哈希。 | 
  | 
执行默认操作系统版本检查。 此标志仅用于验证目录签名的文件。 | 
  | 
如果未设置此标志,则所有时间戳签名都被视为永久有效。 设置此标志会将签名的有效生存期限制为签名证书的生存期。 这允许时间戳签名过期。 | 
  | 
仅使用本地缓存进行吊销检查。 防止通过网络进行吊销检查。 
 Windows XP:不支持此值。  | 
  | 
禁用 MD2 和 MD4 哈希算法的使用。 如果使用 MD2 或 MD4 对文件进行签名,并且设置了此标志,则返回NTE_BAD_ALGID错误。
 
              注意 SP1 及更高版本的操作系统在 Windows 7 上支持此标志。 
 | 
  | 
如果指定了此标志,则假定正在验证的文件已从 Web 下载,并且具有 Web 属性的标记。 将强制实施应用于 Web 文件的标记的策略。
 
              注意 Windows 8.1 及更高版本的操作系统或已安装KB2862966的系统上支持此标志。 
 | 
dwUIContext
DWORD 值,该值指定 WinVerifyTrust 函数的用户界面上下文。 这会导致 Authenticode 对话框中的文本与对文件执行的操作匹配。 这可以是以下值之一。
| 价值 | 意义 | 
|---|---|
  | 
为要运行的文件调用 WinVerifyTrust 时使用。 这是默认值。 | 
  | 
为要安装的文件调用 WinVerifyTrust 时使用。 | 
pSignatureSettings
指向 WINTRUST_SIGNATURE_SETTINGS 结构的指针。
Windows 7 KB3033929、Windows 8 和 Windows Server 2012:支持此成员开始。
要求
| 要求 | 价值 | 
|---|---|
| 最低支持的客户端 | Windows XP [仅限桌面应用] | 
| 支持的最低服务器 | Windows Server 2003 [仅限桌面应用] | 
| 标头 | wintrust.h |