Isenção de responsabilidade: percebo que isso não é para o Outlook 2010, mas isso pode fornecer inspiração suficiente sobre como criar com base na estrutura do Outlook 2007.
Observação: O exemplo a seguir pode ser criado usando uma macro VBA ou um plug-in do Outlook.
Se você localizar onde "Mensagens Relacionadas" existe na hierarquia CommandBar
( estrutura do Menu do Outlook ) - você pode aproveitar o mecanismo Copy
e colocar o CommandBarButton
existente no% PadrãoCommandBar
( no caso do Outlook 2007 ). Depois de fazer isso, você pode renomear o Caption
e atribuir uma tecla de atalho diferente ( veja abaixo para referência ). Neste exemplo, podemos usar Alt + M para acionar o diálogo de busca avançada "Mensagens relacionadas".
Referência ao VSTO
Outlook.Explorer explorer = Application.ActiveExplorer();
// retrieve menu toolbar for this explorer
CommandBar menuBar = explorer.CommandBars.ActiveMenuBar;
for (int i = 1; i <= menuBar.Controls.Count; i++)
{
if (menuBar.Controls[i].Caption == "&Tools")
{
var toolsMenu = menuBar.Controls[i] as CommandBarPopup;
for (int j = 1; j <= toolsMenu.Controls.Count; j++)
{
if (toolsMenu.Controls[j].Caption == "&Instant Search")
{
var searchMenu = toolsMenu.Controls[j] as CommandBarPopup;
for (int k = 1; k <= searchMenu.Controls.Count; k++)
{
if (searchMenu.Controls[k].Caption == "&Related Messages...")
{
var related = searchMenu.Controls[k] as CommandBarButton;
var relatedClone = related.Copy(explorer.CommandBars["Standard"]);
relatedClone.Caption = "Related &Messages";
}
}
}
}
}
}
No Outlook 2010, você pode tentar fazer o seguinte, pois não há uma barra de comandos padrão ( foi substituída pela UI da faixa de opções ). O uso seria então Alt + M e então Enter para acionar o diálogo de busca avançada "Mensagens Relacionadas". No entanto, isso não foi testado.
var relatedClone = related.Copy(menuBar);
Referência do VBA
Sub AddRelatedMessages()
Dim menuBar As CommandBar
Dim toolsMenu As CommandBarPopup, searchMenu As CommandBarPopup
Dim related As CommandBarButton, relatedClone As CommandBarButton
Set menuBar = Application.ActiveExplorer().CommandBars.ActiveMenuBar
Dim i As Integer, j As Integer, k As Integer
For i = 1 To menuBar.Controls.Count Step 1
If (menuBar.Controls(i).Caption = "&Tools") Then
Set toolsMenu = menuBar.Controls(i)
For j = 1 To toolsMenu.Controls.Count Step 1
If (toolsMenu.Controls(j).Caption = "&Instant Search") Then
Set searchMenu = toolsMenu.Controls(j)
For k = 1 To searchMenu.Controls.Count Step 1
If (toolsMenu.Controls(k).Caption = "&Related Messages...") Then
Set related = searchMenu.Controls(k)
Set relatedClone = related.Copy(Explorer.CommandBars("Standard"))
relatedClone.Caption = "Related &Messages"
End If
Next k
End If
Next j
End If
Next i
End Sub