Как отобразить диалоговое окно, содержащее свойства сертификата X.509? - PullRequest
0 голосов
/ 07 сентября 2011

Я хочу отобразить диалоговое окно, содержащее свойства сертификата X509.Это поле содержит три вкладки:

  1. Общие
  2. Подробности
  3. Путь сертификации

Как на этом изображении.

X509 cert. dialog

С C # я использую утверждение:

X509Certificate2UI.DisplayCertificate(X509Certificate2 cert);

Но с Java я не могу найти подобное утверждение!

Какя могу отобразить диалоговое окно, которое содержит свойства сертификата X.509?

1 Ответ

0 голосов
/ 27 октября 2011

Насколько я мог отследить, .NET будет использовать следующую функцию для отображения информации о сертификате:

[StructLayout(LayoutKind.Sequential, CharSet=CharSet.Unicode)]
internal class CRYPTUI_VIEWCERTIFICATE_STRUCTW
{
    internal uint dwSize;
    internal IntPtr hwndParent;
    internal uint dwFlags;
    internal string szTitle;
    internal IntPtr pCertContext;
    internal IntPtr rgszPurposes;
    internal uint cPurposes;
    internal IntPtr pCryptProviderData;
    internal bool fpCryptProviderDataTrustedUsage;
    internal uint idxSigner;
    internal uint idxCert;
    internal bool fCounterSigner;
    internal uint idxCounterSigner;
    internal uint cStores;
    internal IntPtr rghStores;
    internal uint cPropSheetPages;
    internal IntPtr rgPropSheetPages;
    internal uint nStartPage;
    public CRYPTUI_VIEWCERTIFICATE_STRUCTW();
}

[DllImport("cryptui.dll", CharSet=CharSet.Unicode, SetLastError=true)]
internal static extern bool CryptUIDlgViewCertificateW(
    [In, MarshalAs(UnmanagedType.LPStruct)] CRYPTUI_VIEWCERTIFICATE_STRUCTW ViewInfo, 
    [In, Out] IntPtr pfPropertiesChanged);

Я не эксперт по Java, и не уверен, как можно вызывать функции Windows из Java, но должен быть способ. Посмотрите на MSDN для CryptUIDlgViewCertificate функции, и вы узнаете подробности

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...