2

リボン XML を使用して Outlook 2010 および 2007 でカスタム リボンを作成しようとしています。リボン用の XML ファイルが 1 つあり、Outlook 2010 で正常に動作し、リボンが表示され、動作しています。しかし、Outlook 2007 では機能しません。Outlook 2007 にはリボンがないため、GetCustomUI() 関数で Application.Version を使用して Outlook のバージョンを確認しました。バージョンが 14 以上の場合、XML ファイルが読み込まれます。 14 未満の場合、サブルーチンを呼び出して、commandbarcontrol を使用してメニューバーを作成しましたが、これは機能しませんでした。アドインは、Outlook 2007 の起動時に読み込まれません。

Protected Overrides Function CreateRibbonExtensibilityObject() As Microsoft.Office.Core.IRibbonExtensibility
  Return New MyRibbon
End Function

Public Function GetCustomUI(ByVal ribbonID As String) As String Implements Microsoft.Office.Core.IRibbonExtensibility.GetCustomUI
        If iOfficeVersion >= 14 Then
           Return GetResourceText("MyRibbon.xml")
        ElseIf iOfficeVersion < 14 Then
           'Load commandbar UI
        End If
End Function

リボン XML 機能を使用して Outlook 2010 と 2007 の両方をサポートするにはどうすればよいですか?

4

1 に答える 1

1

私は問題を発見しました。問題は、Office.dll (C:\Program Files (x86)\Microsoft Visual Studio 10.0\Visual Studio Tools for Office\PIA\Office14\Office.dll) のプロパティ "Embed Interop Types" が False に設定されていることです。このファイルは、ユーザーの PC では使用できません。

于 2012-11-06T06:38:15.910 に答える