【问题标题】:Hooking/Scraping .NET application挂钩/抓取 .NET 应用程序
【发布时间】:2011-05-17 02:14:07
【问题描述】:

我想为 Magic Online 创建一个交易机器人。如果这是一个问题,这样做不会违反使用条款,并且存在多个此类机器人的供应商。我最初从 DLL 注入/API 挂钩路径开始,但这不起作用,因为它似乎没有调用任何标准 GDI 函数。我的代码在记事本上运行良好,但在 MTGO_NET 上没有任何作用。与第三方挂钩库的结果相同。

然后我“放弃”了,决定尝试使用 OCR。但是,当我尝试对客户端窗口进行截图时,会发生这种奇怪的事情:无论客户端实际显示什么,我都只会得到游戏的启动画面。主窗口设备上下文始终是启动屏幕。我猜客户端使用单独的设备上下文来实际渲染游戏,我必须以某种方式弄清楚那个 DC 是什么。有没有人遇到过这个问题?我很乐意听取有关挂钩 .NET 应用程序或如何截取屏幕截图的任何建议。

我正在 Windows Vista Ultimate 64 位上测试所有这些。我还没有在 32 位安装上测试过这个,但我希望这不是问题。

【问题讨论】:

  • 我找到了截图功能不起作用的原因。这是因为桌面组合。一旦我为应用程序关闭它,复制设备上下文内容就可以正常工作。
  • 在评论中没有解释的问题是愚蠢的:(那是谁?那是谁?:\

标签: automation screen-scraping hook gdi


【解决方案1】:

我建议你看这里:http://www.mtgnews.com/showthread.php?t=191879

它提供了一个“工作”机器人的源代码链接。

google 搜索的结果............

【讨论】:

  • 如果可以的话,我会投票给你。该链接将您带到付费网站。甚至没有提到有问题的机器人不是全功能版本。
  • Hazerider,如果你想让人们在这个网站上帮助你,你需要发展你的阅读能力。我链接到的机器人具有完整的功能,只更改了 2 行源代码。该链接很可能是一个付费网站,但在您最初的问题中,您没有提到您明确不想付款。不像你,我可以投反对票,但我不是那么幼稚。其他人已经说过了。
  • 机器人不具备为不同卡设置价目表的功能。它只允许你用 X 卡换 Y 票。您的回复意味着我刚刚来到 stackoverflow 并发布了一个问题,而没有打扰谷歌。我广泛搜索了这个问题(以及各种相关技术)。此外,谁投了我的票,并没有解释什么不明确,什么没用,就没有为任何人提供任何价值。如果他不明白我在说什么(在 C++ 或 C# 中使用 GDI 进行挂钩/抓取),那是他的缺点,不是我的。
  • 嗯...在我在学校学的通信模型中,当A给B发送消息,而B没有得到消息的预期含义时,总是A的错,并且由于A发送消息的方式。现在,30 多年过去了,经过一番思考,我仍然倾向于同意。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-13
相关资源
最近更新 更多