CRYPTUI_VIEWCERTIFICATE_STRUCTA結構 (cryptuiapi.h)

CRYPTUI_VIEWCERTIFICATE_STRUCT 結構包含要檢視之憑證的相關信息。 此結構用於 CryptUIDlgViewCertificate 函式 中。

語法

typedef struct tagCRYPTUI_VIEWCERTIFICATE_STRUCTA {
  DWORD             dwSize;
  HWND              hwndParent;
  DWORD             dwFlags;
  LPCSTR            szTitle;
  PCCERT_CONTEXT    pCertContext;
  LPCSTR            *rgszPurposes;
  DWORD             cPurposes;
  union {
    CRYPT_PROVIDER_DATA const *pCryptProviderData;
    HANDLE                    hWVTStateData;
  };
  BOOL              fpCryptProviderDataTrustedUsage;
  DWORD             idxSigner;
  DWORD             idxCert;
  BOOL              fCounterSigner;
  DWORD             idxCounterSigner;
  DWORD             cStores;
  HCERTSTORE        *rghStores;
  DWORD             cPropSheetPages;
  LPCPROPSHEETPAGEA rgPropSheetPages;
  DWORD             nStartPage;
} CRYPTUI_VIEWCERTIFICATE_STRUCTA, *PCRYPTUI_VIEWCERTIFICATE_STRUCTA;

成員

dwSize

CRYPTUI_VIEWCERTIFICATE_STRUCT 結構的大小 ,以位元組為單位。

hwndParent

視窗的句柄,該視窗是 CryptUIDlgViewCertificate 所產生的對話框父代。

dwFlags

這個成員可以是下列一或多個值。

意義
CRYPTUI_HIDE_HIERARCHYPAGE
[ 認證路徑 ] 頁面已停用。
CRYPTUI_HIDE_DETAILPAGE
[詳細數據] 頁面已停用。
CRYPTUI_DISABLE_EDITPROPERTIES
不允許使用者變更屬性。
CRYPTUI_ENABLE_EDITPROPERTIES
允許使用者變更屬性。
CRYPTUI_DISABLE_ADDTOSTORE
[ 安裝 ] 按鈕已停用。
CRYPTUI_ENABLE_ADDTOSTORE
已啟用 [ 安裝 ] 按鈕。
CRYPTUI_ACCEPT_DECLINE_STYLE
允許使用者接受或拒絕任何決策的頁面或按鈕會停用。
CRYPTUI_IGNORE_UNTRUSTED_ROOT
忽略不受信任的根錯誤。
CRYPTUI_DONT_OPEN_STORES
已知的信任存放區不會用來建置鏈結。
CRYPTUI_ONLY_OPEN_ROOT_STORE
已知的受信任根存放區不會用來建置鏈結。
CRYPTUI_WARN_UNTRUSTED_ROOT
只有在檢視遠端電腦上的憑證時才使用。 如果使用這個旗標, rghStores 的第一個項目必須是遠端電腦上的根存放區句柄。
CRYPTUI_ENABLE_REVOCATION_CHECKING
使用預設行為啟用撤銷檢查。 默認行為是啟用整個憑證鏈結的撤銷檢查,但跟證書除外。 只有在 pCryptProviderDatahWVTStateData 等位成員都未傳入時才有效。
CRYPTUI_WARN_REMOTE_TRUST
為遠端電腦建置憑證鏈結時,警告遠端計算機上可能不信任鏈結。
CRYPTUI_DISABLE_EXPORT
如果設定此旗標,[詳細數據] 頁面上將會停用 [複製到檔案] 按鈕。
CRYPTUI_ENABLE_REVOCATION_CHECK_END_CERT
只在憑證鏈結中的分葉憑證上啟用撤銷檢查。 只有在 pCryptProviderDatahWVTStateData 等位成員都未傳入時才有效。
CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN
在憑證鏈結中的每個憑證上啟用撤銷檢查。 只有在 pCryptProviderDatahWVTStateData 等位成員都未傳入時才有效。

注意 因為跟證書很少包含允許撤銷檢查的資訊,所以使用此選項通常會導致 CryptUIDlgViewCertificate 函式失敗。 建議的選項是使用CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT。

CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT
在憑證鏈結中的每個憑證上啟用撤銷檢查,但跟證書除外。 這是用於證書吊銷檢查的建議選項。 只有在 pCryptProviderDatahWVTStateData 等位成員都未傳入時才有效。

注意 此旗標相當於CRYPTUI_ENABLE_REVOCATION_CHECKING。

CRYPTUI_DISABLE_HTMLLINK
停用 [憑證] 對話框中的 [HTML 說明] 按鈕 () 。
CRYPTUI_DISABLE_ISSUERSTATEMENT
停用 [憑證] 對話方塊之 [一般] 索引標籤上的 [簽發者語句] 按鈕。
CRYPTUI_CACHE_ONLY_URL_RETRIEVAL
停用在線撤銷檢查。 設定此旗標以確保 CryptUIDlgViewCertificate 函式會使用本機快取來擷取憑證,而不會嘗試從網路擷取憑證。

Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支援此旗標。

szTitle

包含視窗標題之 Null 終止字串的指標。

pCertContext

包含要顯示之憑證內容的 CERT_CONTEXT 結構的指標。

rgszPurposes

Null 終止字串的指標數位列,其中包含要驗證此憑證的目的。

cPurposes

rgszPurposes 陣列中的用途數目。

pCryptProviderData

如果已針對憑證呼叫 WinVerifyTrust 函式,而且也呼叫 了 WTHelperProvDataFromStateData 函式,請傳入從 呼叫 WTHelperProvDataFromStateData 取得的狀態結構指標。 如果 已設定 pCryptProviderData ,則也必須設定 fpCryptProviderDataTrustedUsageidxSigneridxCertfCounterSignature

hWVTStateData

如果已針對憑證呼叫 WinVerifyTrust,且未呼叫 WTHelperProvDataFromStateData,請傳入 WINTRUST_DATA 結構的 hWVTStateData 成員。 如果 已設定 hWVTStateData ,也必須設定 fpCryptProviderDataTrustedUsageidxSigneridxCertfCounterSignature

fpCryptProviderDataTrustedUsage

如果呼叫 WinVerifyTrust ,這是是否信任憑證的結果。

idxSigner

要檢視之簽署者的索引。

idxCert

正在簽署者鏈結內檢視之憑證的索引。 此憑證的憑證內容必須符合 pCertContext

fCounterSigner

如果正在檢視反簽署,則為TRUE。 如果這是 TRUE,idxCounterSigner 必須有效。

idxCounterSigner

要檢視之計數器的索引。

cStores

在建置和驗證憑證鏈結時,要搜尋之 證書存儲 rghStores 陣列中的其他存放區數目。

rghStores

HCERTSTORE 句柄數位,用於建置和驗證憑證鏈結時要搜尋的其他證書存儲。

cPropSheetPages

要新增至對話框的屬性頁數目。

rgPropSheetPages

要新增至對話框的屬性頁陣列。 此陣列中的每個頁面都不會在 PROPSHEETPAGE結構中接收 lParam 做為WM_INITDIALOG訊息中的 lParam。 它會改為接收 CRYPTUI_INITDIALOG_STRUCT 結構的指標。 它包含 PROPSHEETPAGE 中的 lParam,以及顯示頁面之CERT_CONTEXT的指標。

nStartPage

將會顯示之初始頁面的索引。 如果設定了最高位 (0x8000) ,則索引會假設為 rgPropSheetPages (移除最高位之後的索引,例如,0x8000會指出 rgPropSheetPages) 中的第一頁。 如果最高位為零, nStartPage 會是預設憑證對話框屬性頁的起始索引。

備註

注意

cryptuiapi.h 標頭會將CRYPTUI_VIEWCERTIFICATE_STRUCT定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限桌面應用程式]
標頭 cryptuiapi.h

另請參閱

CryptUIDlgViewCertificate