2

我在这个包含 UIAutomation 的 stackoverflow 线程(IE9 文件下载)中遵循了一个提示,它几乎总是有效。

但有时 Invoke 方法会抛出一个异常,上面写着“热键已注册”(或在(原始)德语中:“Diese Abkürzungstaste ist bereits registriert”)。

这是关键代码部分(与上面提到的线程中的代码相比有所修改):

bool bInvoke = (bool)element.GetCurrentPropertyValue(AutomationElement.IsInvokePatternAvailableProperty);
if (bInvoke)
{
    InvokePattern click = element.GetCurrentPattern(InvokePattern.Pattern) as InvokePattern;
    try
    {
        click.Invoke();
    }
    catch (Exception e)
    {
        MessageBox.Show("Invoke error! "+e.Message);
    }
}

问:异常信息是什么意思,如何避免?

4

0 回答 0