栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在Windows中如何获取光标下的单词?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在Windows中如何获取光标下的单词?

在Windows的最新版本上,建议将信息从一个应用程序收集到另一个应用程序的方法(如果您当然不是目标应用程序的话)是使用 UI自动化
技术。Wikipedia非常适合以下方面的更多信息:Microsoft UI
Automation

基本上,UI自动化将使用所有必要的手段来收集可以收集的内容

这是一个小的控制台应用程序代码,它将监视其他应用程序的UI。运行它并将鼠标移到其他应用程序上。每个应用程序对各种“
UI自动化模式”都有不同的支持。例如,这里显示了“值”模式和“文本”模式。

static void Main(string[] args){    do    {        System.Drawing.Point mouse = System.Windows.Forms.Cursor.Position; // use Windows forms mouse pre instead of WPF        AutomationElement element = AutomationElement.FromPoint(new System.Windows.Point(mouse.X, mouse.Y));        if (element == null)        { // no element under mouse return;        }        Console.WriteLine("Element at position " + mouse + " is '" + element.Current.Name + "'");        object pattern;        // the "Value" pattern is supported by many application (including IE & FF)        if (element.TryGetCurrentPattern(ValuePattern.Pattern, out pattern))        { ValuePattern valuePattern = (ValuePattern)pattern; Console.WriteLine(" Value=" + valuePattern.Current.Value);        }        // the "Text" pattern is supported by some applications (including Notepad)and returns the current selection for example        if (element.TryGetCurrentPattern(TextPattern.Pattern, out pattern))        { TextPattern textPattern = (TextPattern)pattern; foreach(TextPatternRange range in textPattern.GetSelection()) {     Console.WriteLine(" SelectionRange=" + range.GetText(-1)); }        }        Thread.Sleep(1000);        Console.WriteLine(); Console.WriteLine();    }    while (true);}

实际上,Internet Explorer和Firefox支持UI自动化,但据我所知,Chrome不支持。请参阅此链接:什么时候可以访问Google
Chrome?

现在,这只是您工作的开始:-),因为:

  • 大多数情况下,所有这些都具有很大的安全隐患。使用此技术(或直接Windows技术,例如WindowFromPoint)将需要足够的权限(例如,成为管理员)。而且,除非他们在计算机上安装内核驱动程序,否则我认为DExperience无法克服这些限制。

  • 某些应用程序即使拥有适当的权限也不会向任何人公开任何内容。例如,如果我正在编写银行应用程序,则不希望您窥探我的应用程序将显示的内容:-)。出于相同原因,其他应用程序(例如带DRM的Outlook)将不会公开任何内容。

  • 仅UI自动化文本模式支持可以提供比整个文本更多的信息(如单词)。las,即使IE和FF全局支持UI自动化,也不支持此特定模式。

因此,如果这一切都不适合您,则您将不得不更深入地研究并使用OCR或形状识别技术。即使这样,在某些情况下您也根本无法做到(由于担保权)。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/430397.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号