Élément ExtensionPoint
Définit l’emplacement où se trouvent les fonctionnalités d’un complément dans l’interface utilisateur Office. L’élément <ExtensionPoint> est un élément enfant de AllFormFactors, DesktopFormFactor ou MobileFormFactor.
Type de complément : Volet Office, Courrier
Valide uniquement dans les schémas VersionOverrides suivants :
- Volet De tâches 1.0
- Mail 1.0
- Courrier 1.1
Pour plus d’informations, consultez Remplacements de version dans le manifeste du complément uniquement.
Attributs
Attribut | Obligatoire | Description |
---|---|---|
xsi:type | Oui | Type de point d’extension défini. Les valeurs possibles dépendent de l’application hôte Office définie dans la valeur de l’élément Host> grand-parent<. |
Points d’extension pour les commandes de complément Excel, OneNote, PowerPoint et Word
Trois types de points d’extension sont disponibles dans tout ou partie de ces hôtes.
- PrimaryCommandSurface (valide pour Word, Excel, PowerPoint et OneNote) : ruban dans Office.
- ContextMenu (Valide pour Word, Excel, PowerPoint et OneNote) : menu contextuel qui s’affiche lorsque vous cliquez avec le bouton droit (ou sélectionnez et maintenez)dans l’interface utilisateur Office.
- CustomFunctions (valide uniquement pour Excel) : fonction personnalisée écrite en JavaScript pour Excel.
Consultez les sous-sections suivantes pour connaître les éléments enfants et des exemples de ces types de points d’extension.
PrimaryCommandSurface
La surface de commande principale dans Word, Excel, PowerPoint et OneNote est le ruban.
Éléments enfants
Élément | Description |
---|---|
CustomTab | Obligatoire si vous souhaitez ajouter un onglet personnalisé au ruban (à l’aide de PrimaryCommandSurface). Si vous utilisez l’élément <CustomTab> , vous ne pouvez pas utiliser l’élément <OfficeTab> . L’attribut id est requis. Il ne peut pas y avoir plus d’un <élément enfant CustomTab> . |
OfficeTab | Obligatoire si vous souhaitez étendre un onglet de ruban d’application Office par défaut (à l’aide de PrimaryCommandSurface). Si vous utilisez l’élément <OfficeTab> , vous ne pouvez pas utiliser l’élément <CustomTab> . |
Importante
Il ne peut pas y avoir plus d’un <élément ExtensionPoint> dans le complément qui a un élément CustomTab> enfant< ; et un seul <élément ExtensionPoint> ne peut avoir qu’un <seul élément CustomTab>, de sorte qu’il n’y a qu’un <seul élément CustomTab> dans tous les <éléments ExtensionPoint>.
Exemple
L’exemple suivant montre comment utiliser l’élément <ExtensionPoint> avec PrimaryCommandSurface. Il ajoute un onglet personnalisé au ruban.
Importante
Pour les éléments qui contiennent un attribut ID, veillez à fournir un ID unique.
<ExtensionPoint xsi:type="PrimaryCommandSurface">
<CustomTab id="Contoso.MyTab1">
<Label resid="residLabel4" />
<Group id="Contoso.Group1">
<Label resid="residLabel4" />
<Icon>
<bt:Image size="16" resid="icon1_32x32" />
<bt:Image size="32" resid="icon1_32x32" />
<bt:Image size="80" resid="icon1_32x32" />
</Icon>
<Tooltip resid="residToolTip" />
<Control xsi:type="Button" id="Contoso.Button1">
<!-- information about the control -->
</Control>
<!-- other controls, as needed -->
</Group>
</CustomTab>
</ExtensionPoint>
ContextMenu
Un menu contextuel est un menu contextuel qui s’affiche lorsque vous cliquez avec le bouton droit (ou sélectionnez et maintenez) dans l’interface utilisateur Office.
Éléments enfants
Élément | Description |
---|---|
OfficeMenu | Obligatoire pour ajouter des commandes de complément à un menu contextuel par défaut (en utilisant ContextMenu).
L’attribut id doit être défini sur l’une des chaînes suivantes.
|
Exemple
L’exemple suivant ajoute un menu contextuel personnalisé aux cellules d’une feuille de calcul Excel.
<ExtensionPoint xsi:type="ContextMenu">
<OfficeMenu id="ContextMenuCell">
<Control xsi:type="Menu" id="Contoso.ContextMenu2">
<!-- information about the control -->
</Control>
<!-- other controls, as needed -->
</OfficeMenu>
</ExtensionPoint>
CustomFunctions
Fonction personnalisée écrite en JavaScript ou TypeScript pour Excel.
Éléments enfants
Élément | Description |
---|---|
Script | Obligatoire. Liens vers le fichier JavaScript avec la définition et le code d’inscription de la fonction personnalisée. |
Page | Obligatoire. Liens vers la page HTML de vos fonctions personnalisées. |
Métadonnées | Obligatoire. Définit les paramètres de script utilisés par une fonction personnalisée dans Excel. |
Namespace | Optional. Définit les paramètres de script utilisés par une fonction personnalisée dans Excel. |
Exemple
<ExtensionPoint xsi:type="CustomFunctions">
<Script>
<SourceLocation resid="Functions.Script.Url"/>
</Script>
<Page>
<SourceLocation resid="Shared.Url"/>
</Page>
<Metadata>
<SourceLocation resid="Functions.Metadata.Url"/>
</Metadata>
<Namespace resid="Functions.Namespace"/>
</ExtensionPoint>
Points d’extension pour Outlook
- MessageReadCommandSurface
- MessageComposeCommandSurface
- AppointmentOrganizerCommandSurface
- AppointmentAttendeeCommandSurface
- Module (ne peut être utilisé que dans DesktopFormFactor)
- MobileMessageReadCommandSurface
- MobileOnlineMeetingCommandSurface
- MobileLogEventAppointmentAttendee
- LaunchEvent
- Événements
- DetectedEntity
- ReportPhishingCommandSurface
MessageReadCommandSurface
Ce point d’extension place des boutons dans la surface de commande pour le mode de lecture de courrier électronique. Dans l’application de bureau Outlook, cela apparaît dans le ruban.
Éléments enfants
Élément | Description |
---|---|
OfficeTab | Ajoute les commandes à l’onglet de ruban par défaut. |
CustomTab | Ajoute les commandes à l’onglet de ruban personnalisé. |
Exemple OfficeTab
<ExtensionPoint xsi:type="MessageReadCommandSurface">
<OfficeTab id="TabDefault">
<-- OfficeTab Definition -->
</OfficeTab>
</ExtensionPoint>
Exemple CustomTab
<ExtensionPoint xsi:type="MessageReadCommandSurface">
<CustomTab id="Contoso.TabCustom2">
<-- CustomTab Definition -->
</CustomTab>
</ExtensionPoint>
MessageComposeCommandSurface
Ce point d’extension place des boutons sur le ruban pour les compléments à l’aide du formulaire de composition de messagerie.
Éléments enfants
Élément | Description |
---|---|
OfficeTab | Ajoute les commandes à l’onglet de ruban par défaut. |
CustomTab | Ajoute les commandes à l’onglet de ruban personnalisé. |
Exemple OfficeTab
<ExtensionPoint xsi:type="MessageComposeCommandSurface">
<OfficeTab id="TabDefault">
<-- OfficeTab Definition -->
</OfficeTab>
</ExtensionPoint>
Exemple CustomTab
<ExtensionPoint xsi:type="MessageComposeCommandSurface">
<CustomTab id="Contoso.TabCustom3">
<-- CustomTab Definition -->
</CustomTab>
</ExtensionPoint>
AppointmentOrganizerCommandSurface
Ce point d’extension place des boutons sur le ruban pour le formulaire qui est affiché à l’intention de l’organisateur de la réunion.
Éléments enfants
Élément | Description |
---|---|
OfficeTab | Ajoute les commandes à l’onglet de ruban par défaut. |
CustomTab | Ajoute les commandes à l’onglet de ruban personnalisé. |
Exemple OfficeTab
<ExtensionPoint xsi:type="AppointmentOrganizerCommandSurface">
<OfficeTab id="TabDefault">
<-- OfficeTab Definition -->
</OfficeTab>
</ExtensionPoint>
Exemple CustomTab
<ExtensionPoint xsi:type="AppointmentOrganizerCommandSurface">
<CustomTab id="Contoso.TabCustom4">
<-- CustomTab Definition -->
</CustomTab>
</ExtensionPoint>
AppointmentAttendeeCommandSurface
Ce point d’extension place des boutons sur le ruban pour le formulaire qui est affiché à l’intention du participant à la réunion.
Éléments enfants
Élément | Description |
---|---|
OfficeTab | Ajoute les commandes à l’onglet de ruban par défaut. |
CustomTab | Ajoute les commandes à l’onglet de ruban personnalisé. |
Exemple OfficeTab
<ExtensionPoint xsi:type="AppointmentAttendeeCommandSurface">
<OfficeTab id="TabDefault">
<-- OfficeTab Definition -->
</OfficeTab>
</ExtensionPoint>
Exemple CustomTab
<ExtensionPoint xsi:type="AppointmentAttendeeCommandSurface">
<CustomTab id="Contoso.TabCustom5">
<-- CustomTab Definition -->
</CustomTab>
</ExtensionPoint>
Module
Ce point d’extension place des boutons sur le ruban pour l’extension de module.
Importante
L’inscription des événements de boîte aux lettres et d’élément n’est pas disponible avec ce point d’extension.
Éléments enfants
Élément | Description |
---|---|
OfficeTab | Ajoute les commandes à l’onglet de ruban par défaut. |
CustomTab | Ajoute les commandes à l’onglet de ruban personnalisé. |
MobileMessageReadCommandSurface
Ce point d’extension place des boutons dans la surface de commande pour le mode de lecture de courrier électronique dans le facteur de forme pour environnement mobile.
Éléments enfants
Élément | Description |
---|---|
Group | Ajoute un groupe de boutons à la surface de commande. |
Les éléments ExtensionPoint> de ce type ne peuvent avoir qu’un seul élément enfant : un élément Group.<<>
L’attribut xsi :type doit être défini sur les éléments control> contenus dans ce point d’extension.<MobileButton
Exemple
<ExtensionPoint xsi:type="MobileMessageReadCommandSurface">
<Group id="Contoso.mobileGroup1">
<Label resid="residAppName"/>
<Control xsi:type="MobileButton" id="Contoso.mobileButton1">
<!-- Control definition -->
</Control>
</Group>
</ExtensionPoint>
MobileOnlineMeetingCommandSurface
Ce point d’extension place un bouton bascule approprié au mode dans l’aire de commande pour un rendez-vous dans le facteur de forme mobile. Un organisateur de réunion peut créer une réunion en ligne. Un participant peut par la suite rejoindre la réunion en ligne. Pour en savoir plus sur ce scénario, voir Créer un complément mobile Outlook pour un fournisseur de réunions en ligne.
Remarque
Ce point d’extension est pris en charge uniquement sur Android et iOS avec un abonnement Microsoft 365.
L’inscription des événements de boîte aux lettres et d’élément n’est pas disponible avec ce point d’extension.
Éléments enfants
Élément | Description |
---|---|
Contrôle | Ajoute un bouton à l’aire de commande. |
Les éléments ExtensionPoint> de ce type ne peuvent avoir qu’un seul élément enfant : un élément Control.<<>
L’élément <Control> contenu dans ce point d’extension doit avoir l’attribut xsi :type défini sur MobileButton
.
Les images spécifiées dans l’élément <Icon> doivent être en nuances de gris à l’aide du code #919191
hexadécimal ou de son équivalent dans d’autres formats de couleur.
Exemple
<ExtensionPoint xsi:type="MobileOnlineMeetingCommandSurface">
<Control xsi:type="MobileButton" id="Contoso.onlineMeetingFunctionButton1">
<Label resid="residUILessButton0Name" />
<Icon>
<bt:Image resid="UiLessIcon" size="25" scale="1" />
<bt:Image resid="UiLessIcon" size="25" scale="2" />
<bt:Image resid="UiLessIcon" size="25" scale="3" />
<bt:Image resid="UiLessIcon" size="32" scale="1" />
<bt:Image resid="UiLessIcon" size="32" scale="2" />
<bt:Image resid="UiLessIcon" size="32" scale="3" />
<bt:Image resid="UiLessIcon" size="48" scale="1" />
<bt:Image resid="UiLessIcon" size="48" scale="2" />
<bt:Image resid="UiLessIcon" size="48" scale="3" />
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>insertContosoMeeting</FunctionName>
</Action>
</Control>
</ExtensionPoint>
MobileLogEventAppointmentAttendee
Ce point d’extension place un bouton d’action Journal contextuel dans l’aire de commande pour un rendez-vous dans le facteur de forme mobile. Les participants aux rendez-vous qui ont installé le complément peuvent enregistrer leurs notes de rendez-vous dans une application externe en un seul clic. Ce point d’extension prend en charge les fonctionnalités des commandes de fonction et du volet Office. Pour en savoir plus sur ce scénario, voir Journaliser les notes de rendez-vous dans une application externe dans les compléments mobiles Outlook.
Remarque
Ce point d’extension est pris en charge uniquement sur Android et iOS avec un abonnement Microsoft 365.
L’inscription des événements de boîte aux lettres et d’élément n’est pas disponible avec ce point d’extension.
Éléments enfants
Élément | Description |
---|---|
Contrôle | Ajoute un bouton à l’aire de commande. |
Les éléments ExtensionPoint> de ce type ne peuvent avoir qu’un seul élément enfant : un élément Control.<<>
L’élément <Control> contenu dans ce point d’extension doit avoir l’attribut xsi :type défini sur MobileButton
.
Les images spécifiées dans l’élément <Icon> doivent être en nuances de gris à l’aide du code #919191
hexadécimal ou de son équivalent dans d’autres formats de couleur.
Exemple
<ExtensionPoint xsi:type="MobileLogEventAppointmentAttendee">
<Control xsi:type="MobileButton" id="appointmentReadFunctionButton">
<Label resid="LogButtonLabel" />
<Icon>
<bt:Image resid="Icon.16x16" size="25" scale="1" />
<bt:Image resid="Icon.16x16" size="25" scale="2" />
<bt:Image resid="Icon.16x16" size="25" scale="3" />
<bt:Image resid="Icon.32x32" size="32" scale="1" />
<bt:Image resid="Icon.32x32" size="32" scale="2" />
<bt:Image resid="Icon.32x32" size="32" scale="3" />
<bt:Image resid="Icon.80x80" size="48" scale="1" />
<bt:Image resid="Icon.80x80" size="48" scale="2" />
<bt:Image resid="Icon.80x80" size="48" scale="3" />
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>logToCRM</FunctionName>
</Action>
</Control>
</ExtensionPoint>
LaunchEvent
Ce point d’extension permet à un complément de s’activer en fonction des événements pris en charge dans les facteurs de forme de bureau et mobiles. Pour en savoir plus sur l’activation basée sur les événements et pour obtenir la liste complète des événements pris en charge, voir Configurer votre complément Outlook pour l’activation basée sur les événements.
Importante
L’inscription des événements de boîte aux lettres et d’élément n’est pas disponible avec ce point d’extension.
Éléments enfants
Élément | Description |
---|---|
LaunchEvents | Liste de LaunchEvent pour l’activation basée sur les événements. |
SourceLocation | Emplacement du fichier JavaScript source. |
Exemple
<ExtensionPoint xsi:type="LaunchEvent">
<LaunchEvents>
<LaunchEvent Type="OnNewMessageCompose" FunctionName="onMessageComposeHandler"/>
<LaunchEvent Type="OnNewAppointmentOrganizer" FunctionName="onAppointmentComposeHandler"/>
</LaunchEvents>
<!-- Identifies the runtime to be used (also referenced by the Runtime element). -->
<SourceLocation resid="WebViewRuntime.Url"/>
</ExtensionPoint>
Événements
Ce point d’extension ajoute un gestionnaire d’événements pour un événement spécifié. Pour plus d’informations sur l’utilisation de ce point d’extension, voir Fonctionnalité d’envoi pour les compléments Outlook.
Importante
L’inscription des événements de boîte aux lettres et d’élément n’est pas disponible avec ce point d’extension.
Remarque
Les alertes intelligentes, qui est une version plus récente de la fonctionnalité d’envoi, utilisent le point d’extension LaunchEvent pour activer l’activation d’événement dans un complément. Pour en savoir plus sur les principales différences entre les alertes intelligentes et la fonctionnalité d’envoi, consultez Différences entre les alertes intelligentes et la fonctionnalité d’envoi. Nous vous invitons à tester les alertes intelligentes en suivant la procédure pas à pas.
Élément | Description |
---|---|
Event | Indique l’événement et la fonction gestionnaire d’événements. |
Exemple d’événement ItemSend
<ExtensionPoint xsi:type="Events">
<Event Type="ItemSend" FunctionExecution="synchronous" FunctionName="itemSendHandler" />
</ExtensionPoint>
DetectedEntity
Ce point d’extension ajoute une activation de complément contextuel sur un type d’entité spécifié. Pour plus d’informations sur l’utilisation de ce point d’extension, consultez Compléments Outlook contextuels.
Importante
Les compléments Outlook contextuels basés sur des entités sont désormais mis hors service. Comme solution alternative, implémentez des règles d’expression régulière dans votre complément contextuel. Pour obtenir des conseils sur la façon d’implémenter ces règles, consultez Compléments Outlook contextuels.
L’élément VersionOverrides contenant doit avoir une valeur d’attribut xsi :type de VersionOverridesV1_1
.
Remarque
- Ce type d’élément est disponible pour les clients Outlook qui prennent en charge les ensembles de conditions requises 1.6 ou version ultérieure.
- L’inscription des événements de boîte aux lettres et d’élément n’est pas disponible avec ce point d’extension.
Élément | Description |
---|---|
Label | Spécifie l’étiquette pour le complément dans la fenêtre contextuelle. |
SourceLocation | Spécifie l’URL de la fenêtre contextuelle. |
Règle | Spécifie la ou les règles qui déterminent lorsqu’un complément s’active. |
Étiquette
Obligatoire. Libellé du groupe. L’attribut resid ne peut pas comporter plus de 32 caractères et doit être défini sur la valeur de l’attribut id d’un <élément String> dans l’élément< ShortStrings> de l’élément Resources.
Exigences relatives à la mise en surbrillance
Le seul moyen pour qu’un utilisateur puisse activer un complément contextuel consiste à interagir avec une entité en surbrillance. Les développeurs peuvent contrôler les entités mises en surbrillance à l’aide de l’attribut Highlight de l’élément <Rule> pour le type de ItemHasRegularExpressionMatch
règle.
Toutefois, il existe certaines limitations à connaître. Ces limitations sont en place pour vous assurer qu’il y aura toujours une entité en surbrillance dans les messages ou rendez-vous applicables pour permettre à l’utilisateur d’activer le complément.
- Si vous utilisez une seule règle, l’attribut Highlight DOIT être défini sur
all
. - Si vous utilisez un
RuleCollection
type de règle avecMode="And"
pour combiner plusieurs règles, au moins l’une des règles DOIT avoir l’attribut Highlight défini surall
. - Si vous utilisez un
RuleCollection
type de règle avecMode="Or"
pour combiner plusieurs règles, l’attribut Highlight doit être défini surall
.
Exemple d’événement DetectedEntity
<ExtensionPoint xsi:type="DetectedEntity">
<Label resid="Context.Label"/>
<SourceLocation resid="DetectedEntity.URL" />
<Rule xsi:type="RuleCollection" Mode="And">
<Rule xsi:type="ItemIs" ItemType="Message"/>
<Rule xsi:type="ItemHasRegularExpressionMatch" RegExName="videoURL" RegExValue="http://www\.youtube\.com/watch\?v=[a-zA-Z0-9_-]{11}" PropertyName="BodyAsPlaintext"/>
</Rule>
</ExtensionPoint>
ReportPhishingCommandSurface
Ce point d’extension active votre complément de création de rapports de courrier indésirable dans le ruban Outlook et l’empêche d’apparaître à la fin du ruban ou dans le menu de dépassement.
Pour en savoir plus sur la façon d’implémenter la fonctionnalité de rapport de courrier indésirable dans votre complément, consultez Implémenter un complément intégré de création de rapports de courrier indésirable.
Éléments enfants
Élément | Description |
---|---|
Élément ReportPhishingCustomization | Configure le bouton du ruban et la boîte de dialogue de prétraitement d’un complément de création de rapports de courrier indésirable. |
Exemple
<ExtensionPoint xsi:type="ReportPhishingCommandSurface">
<ReportPhishingCustomization>
<!-- Configures the ribbon button. -->
<Control xsi:type="Button" id="ReportingButton">
<Label resid="ReportingButton.Label"/>
<Supertip>
<Title resid="ReportingButton.Label"/>
<Description resid="ReportingButton.Description"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="Icon.16x16"/>
<bt:Image size="32" resid="Icon.32x32"/>
<bt:Image size="64" resid="Icon.64x64"/>
<bt:Image size="80" resid="Icon.80x80"/>
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>onMessageReport</FunctionName>
</Action>
</Control>
<!-- Configures the preprocessing dialog. -->
<PreProcessingDialog>
<Title resid="PreProcessingDialog.Label"/>
<Description resid="PreProcessingDialog.Description"/>
<ReportingOptions>
<Title resid="OptionsTitle.Label"/>
<Option resid="Option1.Label"/>
<Option resid="Option2.Label"/>
<Option resid="Option3.Label"/>
<Option resid="Option4.Label"/>
</ReportingOptions>
<FreeTextLabel resid="FreeText.Label"/>
<MoreInfo>
<MoreInfoText resid="MoreInfo.Label"/>
<MoreInfoUrl resid="MoreInfo.Url"/>
</MoreInfo>
</PreProcessingDialog>
<SourceLocation resid="Commands.Url"/>
</ReportPhishingCustomization>
</ExtensionPoint>