2017-01-07 2 views
0

Ich habe office-generator verwendet, um ein Outlook-Add-In zu raften, und es scheint zu erscheinen und auszuführen, wenn E-Mail im Lesemodus geöffnet wurde, aber nicht im Addins-Abschnitt angezeigt wird, wenn eine neue Mail erstellt wird. Ich wollte das AddIn im Compose-Modus anzeigen und nach dem Klick auf das Add-In-Fenster öffnen.Wie zeige ich AddIn in Outlook beim Verfassen von Mail an?

Es folgt die erzeugte manifest.xml:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="MailApp" xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0"> 
    <Id>f1a2f021-ef67-4e8f-a08c-e24700c36c3d</Id> 
    <Version>1.0.0.0</Version> 
    <ProviderName>[Provider name]</ProviderName> 
    <DefaultLocale>en-US</DefaultLocale> 
    <DisplayName DefaultValue="Test"/> 
    <Description DefaultValue="[Outlook Add-in description]"/> 
    <IconUrl DefaultValue="https://localhost:8443/images/icon-32.png"/> 
    <HighResolutionIconUrl DefaultValue="https://localhost:8443/images/hi-res-icon.png"/> 
    <Hosts> 
    <Host Name="Mailbox"/> 
    </Hosts> 
    <Requirements> 
    <Sets> 
     <Set Name="MailBox" MinVersion="1.1"/> 
    </Sets> 
    </Requirements> 
    <FormSettings> 
    <Form xsi:type="ItemRead"> 
     <DesktopSettings> 
     <SourceLocation DefaultValue="https://localhost:8443/appread/home/home.html"/> 
     <RequestedHeight>250</RequestedHeight> 
     </DesktopSettings> 
    </Form> 
    <Form xsi:type="ItemEdit"> 
     <DesktopSettings> 
     <SourceLocation DefaultValue="https://localhost:8443/appcompose/home/home.html"/> 
     </DesktopSettings> 
    </Form> 
    </FormSettings> 
    <Permissions>ReadWriteItem</Permissions> 
    <Rule xsi:type="RuleCollection" Mode="Or"> 
    <Rule xsi:type="ItemIs" ItemType="Message" FormType="Edit" /> 
    <Rule xsi:type="ItemIs" ItemType="Message" FormType="Read"/> 
    <Rule xsi:type="ItemIs" ItemType="Appointment" FormType="Edit"/> 
    <Rule xsi:type="ItemIs" ItemType="Appointment" FormType="Read"/> 
    </Rule> 
    <DisableEntityHighlighting>false</DisableEntityHighlighting> 
    <VersionOverrides xmlns="http://schemas.microsoft.com/office/mailappversionoverrides" xsi:type="VersionOverridesV1_0"> 
    <Hosts> 
     <Host xsi:type="MailHost"> 
     <DesktopFormFactor> 
      <FunctionFile resid="funcFile"/> 
      <ExtensionPoint xsi:type="MessageReadCommandSurface"> 
      <OfficeTab id="TabDefault"> 
       <Group id="msgReadCmdGroup"> 
       <Label resid="groupLabel"/> 
       <Control xsi:type="Button" id="msgReadPaneButton"> 
        <Label resid="msgReadPaneButtonLabel"/> 
        <Supertip> 
        <Title resid="msgReadPaneButtonTitle"/> 
        <Description resid="msgReadPaneButtonDesc"/> 
        </Supertip> 
        <Icon> 
        <bt:Image size="16" resid="icon-16"/> 
        <bt:Image size="32" resid="icon-32"/> 
        <bt:Image size="80" resid="icon-80"/> 
        </Icon> 
        <Action xsi:type="ShowTaskpane"> 
        <SourceLocation resid="readPaneUrl"/> 
        </Action> 
       </Control> 
       </Group> 
      </OfficeTab> 
      </ExtensionPoint> 
      <ExtensionPoint xsi:type="AppointmentAttendeeCommandSurface"> 
      <OfficeTab id="TabDefault"> 
       <Group id="attendeeCmdGroup"> 
       <Label resid="groupLabel"/> 
       <Control xsi:type="Button" id="attendeePaneButton"> 
        <Label resid="attendeePaneButtonLabel"/> 
        <Supertip> 
        <Title resid="attendeePaneButtonTitle"/> 
        <Description resid="attendeePaneButtonDesc"/> 
        </Supertip> 
        <Icon> 
        <bt:Image size="16" resid="icon-16"/> 
        <bt:Image size="32" resid="icon-32"/> 
        <bt:Image size="80" resid="icon-80"/> 
        </Icon> 
        <Action xsi:type="ShowTaskpane"> 
        <SourceLocation resid="readPaneUrl"/> 
        </Action> 
       </Control> 
       </Group> 
      </OfficeTab> 
      </ExtensionPoint> 
      <ExtensionPoint xsi:type="AppointmentOrganizerCommandSurface"> 
      <OfficeTab id="TabDefault"> 
       <Group id="organizerCmdGroup"> 
       <Label resid="groupLabel"/> 
       <Control xsi:type="Button" id="organizerGetSubject"> 
        <Label resid="getSubjectLabel"/> 
        <Supertip> 
        <Title resid="getSubjectTitle"/> 
        <Description resid="getSubjectDesc"/> 
        </Supertip> 
        <Icon> 
        <bt:Image size="16" resid="icon-16"/> 
        <bt:Image size="32" resid="icon-32"/> 
        <bt:Image size="80" resid="icon-80"/> 
        </Icon> 
        <Action xsi:type="ExecuteFunction"> 
        <FunctionName>getSubject</FunctionName> 
        </Action> 
       </Control> 
       <Control xsi:type="Menu" id="organizerMenu"> 
        <Label resid="menuLabel"/> 
        <Supertip> 
        <Title resid="menuTitle"/> 
        <Description resid="menuDescription"/> 
        </Supertip> 
        <Icon> 
        <bt:Image size="16" resid="icon-16"/> 
        <bt:Image size="32" resid="icon-32"/> 
        <bt:Image size="80" resid="icon-80"/> 
        </Icon> 
        <Items> 
        <Item id="organizerSetSubject"> 
         <Label resid="setSubjectLabel"/> 
         <Supertip> 
         <Title resid="setSubjectTitle"/> 
         <Description resid="setSubjectDesc"/> 
         </Supertip> 
         <Icon> 
         <bt:Image size="16" resid="icon-16"/> 
         <bt:Image size="32" resid="icon-32"/> 
         <bt:Image size="80" resid="icon-80"/> 
         </Icon> 
         <Action xsi:type="ExecuteFunction"> 
         <FunctionName>setSubject</FunctionName> 
         </Action> 
        </Item> 
        <Item id="organizerAddRecip"> 
         <Label resid="addRecipLabel"/> 
         <Supertip> 
         <Title resid="addRecipTitle"/> 
         <Description resid="addRecipDesc"/> 
         </Supertip> 
         <Icon> 
         <bt:Image size="16" resid="icon-16"/> 
         <bt:Image size="32" resid="icon-32"/> 
         <bt:Image size="80" resid="icon-80"/> 
         </Icon> 
         <Action xsi:type="ExecuteFunction"> 
         <FunctionName>addToRecipients</FunctionName> 
         </Action> 
        </Item> 
        </Items> 
       </Control> 
       </Group> 
      </OfficeTab> 
      </ExtensionPoint> 
     </DesktopFormFactor> 
     </Host> 
    </Hosts> 
    <Resources> 
     <bt:Images> 
     <bt:Image id="icon-16" DefaultValue="https://localhost:8443/images/icon-16.png"/> 
     <bt:Image id="icon-32" DefaultValue="https://localhost:8443/images/icon-32.png"/> 
     <bt:Image id="icon-80" DefaultValue="https://localhost:8443/images/icon-80.png"/> 
     </bt:Images> 
     <bt:Urls> 
     <bt:Url id="funcFile" DefaultValue="https://localhost:8443/FunctionFile/Functions.html"/> 
     <bt:Url id="readPaneUrl" DefaultValue="https://localhost:8443/appread/home/home.html"/> 
     </bt:Urls> 
     <bt:ShortStrings> 
     <bt:String id="groupLabel" DefaultValue="Sample Add-in"/> 
     <bt:String id="msgReadPaneButtonLabel" DefaultValue="See message details"/> 
     <bt:String id="msgReadPaneButtonTitle" DefaultValue="See message details"/> 
     <bt:String id="attendeePaneButtonLabel" DefaultValue="See appointment details"/> 
     <bt:String id="attendeePaneButtonTitle" DefaultValue="See appointment details"/> 
     <bt:String id="setSubjectLabel" DefaultValue="Set subject"/> 
     <bt:String id="setSubjectTitle" DefaultValue="Set subject"/> 
     <bt:String id="getSubjectLabel" DefaultValue="Get subject"/> 
     <bt:String id="getSubjectTitle" DefaultValue="Get subject"/> 
     <bt:String id="addRecipLabel" DefaultValue="Add recipient"/> 
     <bt:String id="addRecipTitle" DefaultValue="Add recipient"/> 
     <bt:String id="menuLabel" DefaultValue="Modify message"/> 
     <bt:String id="menuTitle" DefaultValue="Modify message"/> 
     </bt:ShortStrings> 
     <bt:LongStrings> 
     <bt:String id="msgReadPaneButtonDesc" DefaultValue="Opens a task pane showing the subject and sender of the currently selected message"/> 
     <bt:String id="attendeePaneButtonDesc" DefaultValue="Opens a task pane showing the subject and sender of the currently selected appointment"/> 
     <bt:String id="setSubjectDesc" DefaultValue="Sets the subject to 'Hello World!'"/> 
     <bt:String id="getSubjectDesc" DefaultValue="Gets the current subject and displays it in the info bar"/> 
     <bt:String id="addRecipDesc" DefaultValue="Add yourself to the recipient list (the To line for messages, the Required attendees line for appointments)"/> 
     <bt:String id="menuDescription" DefaultValue="Expand this menu to set this subject or add yourself to the To line."/> 
     </bt:LongStrings> 
    </Resources> 
    </VersionOverrides> 
</OfficeApp> 

Antwort

3

Diese im VersionOverides Abschnitt behandelt wird. In dem Manifest, das Sie eingeschlossen haben, werden Sie eine ExentionPoint als <ExtensionPoint xsi:type="MessageReadCommandSurface"> definierte Nachricht bemerken. Dies definiert einen Erweiterungspunkt für das Lesen von Nachrichten.

Um das Add-In während der Erstellung zu aktivieren, müssen Sie einen ExtentionPoint für MessageComposeCommandSurface hinzufügen.

Wenn Sie nur während des Verfassens anzeigen möchten, entfernen Sie einfach den Abschnitt MessageReadCommandSurface. Dasselbe gilt für AppointmentAttendeeCommandSurface (Lesen von Terminen, zu denen Sie eingeladen wurden) und AppointmentOrganizerCommandSurface (Lesen von Terminen, die Sie erstellt haben).

+0

Marc, wir haben festgestellt, dass beim Öffnen eines vorhandenen Ereignisses AppointmentOrganizerCommandSurface den Modus "Verfassen" öffnet, in dem ItemId nicht verfügbar ist. Soll es so sein? Ist es für bestehende Ereignisse, die ein Benutzer bearbeitet, nicht sinnvoll? Gibt es eine Möglichkeit, ItemId in einem solchen Fall zu erhalten? Danke – Alexey

+0

Dies ist nicht wirklich mit dieser Antwort verbunden. Könnten Sie das bitte als Frage posten? –

Verwandte Themen