1

我想知道是否有一种方法可以从我的插件中以编程方式打开 Outlook 快捷方式。

我创建了如下快捷方式

Sub AddShortcut()
    Dim myOlBar As Outlook.OutlookBarPane
    Dim myolGroup As Outlook.OutlookBarGroup
    Dim myOlShortcuts As Outlook.OutlookBarShortcuts

    myOlBar = Application.ActiveExplorer.panes.Item("OutlookBar")
    myolGroup = myOlBar.Contents.Groups.Item(1)
    myOlShortcuts = myolGroup.Shortcuts
    myOlShortcuts.Add("http://microsoft.com/", _
    "MSHomepage", 1)
End Sub

我猜我需要以InvokeMember某种方式使用

myOlShortcuts("MSHomepage").GetType().InvokeMember(..) 

但是当我使用时,我GetType().GetMethods()看不到任何Click成员或类似的东西。很感谢任何形式的帮助。

4

1 回答 1

1

如果你想触发 Outlook 集成的网络浏览器,你应该抓住OutlookBarShortcut.Target. 如果Target是 type string,则使用以下内容(将您的 Target 替换为地址 Text)...

Office.CommandBarComboBox address = (Office.CommandBarComboBox)Application.ActiveExplorer().CommandBars.FindControl(26, 1740);
address.Text = "http://www.stackoverflow.com";

否则类型是Folder,你应该分配Explorer.CurrentFolder. 此方法的唯一缺点是CommandBars已在 Outlook 2010 中弃用,并且此解决方案可能无法在下一版本的 Office 中运行。

另一种选择是使用此 SO 帖子中讨论的 Web 文件夹行为。您可以创建一个Folder仅用于导航目的的隐藏。

于 2012-06-12T20:55:43.783 回答