【问题标题】:How to launch a wpf app from vba for outlook and call a procedure from this app如何从 vba for Outlook 启动 wpf 应用程序并从此应用程序调用程序
【发布时间】:2017-06-09 02:55:21
【问题描述】:

我使用 vb.net 4.0 创建了一个 wpf 应用程序,并在我的 PC 上安装了这个应用程序。这个应用程序有一个带有启动程序按钮的 GUI。我的应用程序非常复杂,回到 vba 是不可能的。

我想要做的是启动应用程序并在收到特定的新电子邮件时(每天一次)从 Outlook 自动触发此过程。我想出了如何在 Outlook 的 vba 中使用 Shell 方法来启动我的应用程序。

但现在我的问题是:有什么方法可以模拟单击 GUI 按钮(从 Outlook 中的 vba,使用脚本或任何其他方法...)?

或者应用程序是否知道它从哪里开始,以便我可以在启动时启动该过程,如果执行是通过Shell 从 Outlook 调用的?

我想避免发布一个在启动时调用该过程的新应用程序,这样我只有 1 个源代码,以便我可以继续手动使用我的应用程序。

感谢您的帮助。

【问题讨论】:

    标签: vba wpf vb.net shell outlook


    【解决方案1】:

    如果我理解正确,那么您想从 Outlook VBA 启动一个 .NET WPF 应用程序并让它运行一些启动过程。

    如果是这种情况,那么我建议您在使用VBA.Shell 时传递一些额外的命令行参数。 WPF 应用可以读取自己的命令行参数,这里有教程。

    http://www.wpf-tutorial.com/wpf-application/command-line-parameters/

    如果您以后需要影响 WPF 应用程序的行为,那将不那么简单,如果需要,请发表评论。

    【讨论】:

    • 是的。仅当应用程序是在 Outlook 中使用 vba 启动时(通过 shell),我才想在启动时运行该过程。否则(如果程序是从任务栏、主菜单等启动的),程序会正常启动,然后用户单击按钮启动程序。我会试试你的解决方案。
    • 我测试了它,效果很好。在您发表评论之前,我开始研究 windows api 以编程方式单击按钮,但您的解决方案要干净得多。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2016-10-15
    • 2014-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多