微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在不使用电源外壳或其他使用 C++、MFC/MAPI 的应用程序的情况下运行 Outlook.exe 时将参数传递给它?

如何解决如何在不使用电源外壳或其他使用 C++、MFC/MAPI 的应用程序的情况下运行 Outlook.exe 时将参数传递给它?

我的插件是用 MAPI C++ 编写的,用于 Outlook。

一个要求,如果用户执行 gal 删除,我想清除 Outlook 的缓存,其中有一个开关 /CleanAutoCompleteCache 将清除 Outlook 的整个 AutoComplete 列表。

现在我知道我可以通过任何 power shell 脚本或其他东西来做到这一点,但我只想通过我的代码来做到这一点。即 Outlook 自动重新启动的代码

有没有办法在用户通过双击图标或 Outlook.exe 文件打开 Outlook 时传递此 /CleanAutoCompleteCache 开关?

解决方法

您可以在应用程序启动新进程时指定命令行参数,例如,要启动外部应用程序,您可以使用以下代码:

#include <stdlib.h>
...
system("cmd.exe")

第二个参数允许指定参数。

但是,您需要先关闭 Outlook,然后才能启动新实例并应用命令行参数来清除自动完成列表。因此,您可以开发一个可以使用指定命令行启动 Outlook 的外部应用程序,但应从您的加载项中安排该应用程序在 outlook.exe 进程不存在时运行。因此,在您的 VSTO 加载项中,您可以安排外部应用程序(或者只是运行它并等待 Outlook 从正在运行的应用程序列表中退出)并关闭 Outlook(请参阅 Application类)。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。