0

スマートカードによる Web サイトへの認証を含むテストを自動化しようとしています。

私はc#、windows 7を使用しています。

URL を起動すると、windows security使用可能な証明書のリストから証明書を選択するように求めるウィンドウが表示されます。

セキュリティ ダイアログ ボックスにリストされている証明書のリストをプログラムで反復処理する方法を思い付くことが不可能であることがわかりました。リストを反復処理し、目的の証明書と一致する証明書が見つかるまで、リストされている証明書のフレンドリ名を読み続ける必要があります。

4

1 に答える 1

3
AutomationElementCollection windows =  AutomationElement.RootElement.FindAll(TreeScope.Descendants, new PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.Window));
        foreach (AutomationElement window in windows)
        {
            if (window.Current.ClassName.Equals("#32770"))   //security dialog
            {
                AutomationElementCollection certs = window.FindAll(TreeScope.Descendants, new PropertyCondition(AutomationElement.ControlTypeProperty,ControlType.ListItem));
                foreach (AutomationElement cert in certs)
                {
                    Console.WriteLine(cert.Current.Name);
                }
            }
        }
于 2012-05-11T23:55:20.950 に答える