【问题标题】:Auto click with VBscript使用 VBscript 自动单击
【发布时间】:2014-04-03 20:49:09
【问题描述】:

我找到了下面的 vbscript 代码,可以将鼠标光标移动到特定位置,但我还需要它来单击屏幕上光标所在的任何位置。

我只需要使用 vbscript 来完成此操作,因为系统限制暗示了这一点。我当前的代码:

Option Explicit
Dim Excel, x, y

Set Excel = WScript.CreateObject("Excel.Application")

x = "111"
y = "222"
Excel.ExecuteExcel4Macro ( _
"CALL(""user32"",""SetCursorPos"",""JJJ""," & x & "," & y & ")")

WScript.Sleep (100)

【问题讨论】:

  • 您为什么要尝试使用 Excel 呢?这就像使用核装置点燃香烟。
  • 因为我不知道有什么别的办法..
  • 任何帮助将不胜感激
  • 我用我的 cmets 做了一个回答。如果回答有帮助,请采纳。这会将这个问题从未决问题列表中删除。否则,请评论它为什么没有帮助。
  • 我还是没有得到你的答复。我不会使用 excel,但必须有其他东西可以用来使它工作。我唯一需要的是一个 VBscript 代码,可以在屏幕上的任何位置(可能在中心)单击一次。请帮忙。我非常需要它并尝试了很多谷歌的东西但没有帮助。

标签: vbscript mouseevent


【解决方案1】:

您的限制非常有限,请参阅Import WinAPI Function in *.VBS File

如果您可以使用CALL 来调用 WinAPI 函数,这对我来说将是一个新闻。 CALL 只调用 VBScript 函数。

VBS 中有很好的 COM 集成 (CreateObject...)。但是,如果您无法找到执行您想要的 COM 对象(并且仍然无法编写我们自己的),那么如果没有额外的软件,您可能很难实现您的目标。对于哪一个 Excel 将是更糟糕的选择之一,因为它很大,而且它的 VBA 在本机操作系统调用方面与 VBS 一样受到限制。

可以使用rundll 通过调用Windows DLL 中的入口点来调用某些WinAPI 函数。其中一些可能会提供您需要的东西。但是请参阅 How to use Rundll32 to execute DLL Function? 了解您将面临的混乱情况 :-) 我认为您应该获得 AutoIt 授权,请参阅 autoitscript.com/site/autoit。

然后,您想要的东西就是一个快照。

【讨论】:

    猜你喜欢
    • 2012-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多