|
OSのバージョンとIEのバージョンも関係するかも知れませんが、私の環境はSP1で、
下みたいなコードで表示できています。
2年くらい前からです。確か、2000でも表示できてたような気がします。違ってたら
ごめんなさい。
私のみている MSDN ライブラリ 2001 年 10 月リリース では CryptUIDlgViewContex
t は
Requirements
Windows NT/2000/XP: Included in Windows XP and Windows .NET Server.
Windows 95/98/Me: Unsupported.
となっています。今は違うみたいですね。アンサポートな機能となってしまいますか
ね。
CAPICOMというのを使ってやる手もあるようです。
いずれにしろこれで、失効の問題が解決できるわけではありませんが。
電子署名や暗号が割りと簡単に出来てしまうのに比べて、証明書の信頼に関してはや
っかいだと思います。頑張ってください。
では、失礼いたしました。
typedef BOOL (WINAPI *LPFN_CRYPT_UI_DLG_VIEW_CONTEXT)
(
IN DWORD dwContextType,
IN const void *pvContext,
IN HWND hwnd,
IN LPCWSTR pwszTitle,
IN DWORD dwFlags,
IN void *pvReserved
);
HMODULE hDLL = NULL;
LPFN_CRYPT_UI_DLG_VIEW_CONTEXT lpFunc = NULL;
hDLL = LoadLibraryEx("cryptui.dll", NULL, 0);
if (hDLL)
{
lpFunc = (LPFN_CRYPT_UI_DLG_VIEW_CONTEXT)GetProcAddress(hDLL, "CryptUIDl
gViewContext");
if (lpFunc)
{
(*lpFunc)(
CERT_STORE_CERTIFICATE_CONTEXT,
pCertContext,
hWnd,
NULL,
0,
NULL);
}
FreeLibrary(hDLL);
}
|
|