代码之家  ›  专栏  ›  技术社区  ›  Samrat Patil

在应用程序中创建自动化宏支持

  •  15
  • Samrat Patil  · 技术社区  · 14 年前

    我需要在我们的桌面应用程序中得到一个类似于自动化宏的东西。桌面应用程序可能在VB.NET或C#.NET中。 原因是让用户能够记录和重播他们希望自动化的某些任务。类似于office应用程序和visual studio中的宏。 我首先想到的是VBA。

    这是正确的方法还是有其他选择?

    一些有用的链接让我去。

    提前谢谢。
    萨姆拉特。

    P、 这是一个相当普遍的问题,不属于任何特定的技术。如果你们中的一些人认为标签不合适,或者它需要一些我遗漏的标签,请随意编辑它们:)

    6 回复  |  直到 14 年前
        1
  •  13
  •   Philipp    14 年前

    你是不是想到了一些宏,这些宏只是用来“录制回放”一些连续的动作?如果你使用 Command pattern 在你的UI编程中。然后,每个用户操作都由一个对象(从具有“execute()”方法的抽象命令类派生)描述。现在,录制和重播只是存储一个命令对象列表,对它们进行序列化,宏就完成了。对于重放,只需反序列化数据并再次执行命令列表。

    希望能有帮助!

        2
  •  4
  •   Todd Main    14 年前

    Visual Studio Tools for Applications )是VBA的替代品。它还没有像VBA在第三方供应商,甚至在MSFT自己的产品(目前唯一拥有它的是InfoPath)上那么流行。但如果这是一个问题的话,它比VBA要现代得多。

    退房 VSTA main page Integrating VSTA to Enable Macro Recording .

        4
  •  1
  •   Ohad Schneider    14 年前

    必须在应用程序中构建它吗?Windows级别有宏解决方案(假设这是您的目标操作系统)

        5
  •  0
  •   MarkJ    14 年前

    你可以用Powershell cmdlets

    将GUI执行的每个操作实现为 cmdlet . 然后用户可以使用Powershell编写脚本。我相信这是 Exchange Server and SQL Server sysadmin 用户

        6
  •  0
  •   g19fanatic    14 年前

    由于您是自己开发应用程序的,因此应该能够直接使用Windows API创建(和监视)鼠标/键盘事件。

    看一看 keybd_event mouse_event GetCursorPos . 它们很容易正确使用(我发现它们比使用 SendInput