有一天,我发现自己沉迷于Flash游戏并同时对此事感到沮丧.在对比赛感到沮丧的那一刻,我以为我会制作一个"机器人"来为我击败它.好吧,我真的不会,但它让我意识到:我不知道如何以某种方式与另一个应用程序进行交互.这让我想到了一个问题,如何获取另一个正在运行的应用程序的屏幕截图并使用键盘和鼠标与其进行交互.理想情况下,解决方案将采用c#等托管语言.
在进行背景阅读时,网络上淹没了关于抓取HTML的文章.关于实际屏幕抓取应用程序的文章并不多.
不同的答案是值得赞赏的,因为我正在考虑调查那里有什么.
UPDATE
我正在寻找一种方法来与另一个应用程序进行交互,而不是脚本/宏另一个应用程序.
UPDATE
像Xming这样的东西可以用来重定向界面吗? http://www.straightrunning.com/XmingNotes/
也许是终端服务客户端? http://www.codeproject.com/KB/cs/RemoteDesktop_CSharpNET.aspx
c# graphics screen-scraping console-scraping graphical-interaction
有人知道Emacs的任何图形面包屑吗?我想让我正在编辑的文件的路径显示在某个地方的顶部.
我尝试制作适用于不同平台的 Modelica 库代码。
我理解使用前缀“constant”是为了保护参数在编译后不被用户交互更改。如果您想允许更改,请使用前缀“参数”。
结构参数,例如水箱入口的数量,您可以自然地声明为
constant integer n_inlets = 1;
Run Code Online (Sandbox Code Playgroud)
当需要配置带有 n_inlets 的组件槽时,您可以编写代码
Tank tank(n_inlets=0);
Run Code Online (Sandbox Code Playgroud)
如果您决定水箱不应有任何入口。然后,编译后 n_inlets 被保护保持为 0,并且任何用户交互都不会改变它。
但是,如果你喜欢使用GUI来配置坦克,那么我认为你必须声明n_inlets作为参数,否则交互菜单将不会包含n_inlets。至少在 OpenModelica 中是这种情况,我猜其他 Modelica 实现中的 GUI 也是类似的。
配置完成后,我仍然希望保护 n_inlets 免受编译后后续用户交互的影响。有没有办法以这种方式编写代码?