使用 MSHTML 进行 Web 自动化

发布于 2024-08-14 18:10:31 字数 167 浏览 7 评论 0原文

我们想要自动化在 ASP.NET 中开发的 Web 应用程序。为了使该网站自动化,我们计划使用 MSHTML。但在最终确定 MSHTML 之前,我想知道 MSHTML 是否有任何已知的限制,或者请分享我们可能无法使用 MSHTML 实现自动化的控件列表。

请分享您使用 MSHTML 自动化的经验。谢谢。

We want to automate a web application which is developed in asp.net. For automating this site we are planning to use the MSHTML. But before finalizing MSHTML I would like to know if there are any known limitations of MSHTML or please share list of controls which we may not be able to automate using MSHTML.

Please share your experiences with MSHTML automation. Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

过期情话 2024-08-21 18:10:31

我们使用 CAutomationElement 类来搜索 webDocument 上的元素并识别表格和不同的控件。一些示例代码如下:

if (parentElement != null)
{

    string description = string.Empty;
    switch (elementInformation.SearchBy)
    {
        case SearchByType.Name:
        description = parentElement.Name;
        break;
        case SearchByType.ID:
        description = parentElement.AutomationId;
        break;
    }
    if (description != null && description.Equals(elementInformation.ElementDescription.Trim()))
    {
        searchedElement = parentElement;
    }
    else
    {
        List<IWebElement> children = parentElement.Children;
        foreach (IWebElement childElement in children)
        {
        IWebElement tempElement = SearchHtmlElement(childElement, elementInfo);
        if (tempElement != null)
        {
            searchedElement = tempElement;
            break;
        }
        }
    }

We have used CAutomationElement class for seaching the elements on the webDocument and identified the table and different controls. Some sample code is as below:

if (parentElement != null)
{

    string description = string.Empty;
    switch (elementInformation.SearchBy)
    {
        case SearchByType.Name:
        description = parentElement.Name;
        break;
        case SearchByType.ID:
        description = parentElement.AutomationId;
        break;
    }
    if (description != null && description.Equals(elementInformation.ElementDescription.Trim()))
    {
        searchedElement = parentElement;
    }
    else
    {
        List<IWebElement> children = parentElement.Children;
        foreach (IWebElement childElement in children)
        {
        IWebElement tempElement = SearchHtmlElement(childElement, elementInfo);
        if (tempElement != null)
        {
            searchedElement = tempElement;
            break;
        }
        }
    }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文