This project is read-only.
A sample button called ZuluMail is provided with the main download. This guidance is based on the ZuluMail sample.

  • Each button must have a unique name, lets call it an Identifier, in this case ZuluMail.
  • A button must consist of the following file / folder structure

Identifier (folder)
-- images (sub folder)
button.xml (file)
config.xml (file)

Zulu Mail Folder
  • The images folder contains all images referenced by the menus configured in the button.xml file.
  • The button.xml file contains the text that will define the makeup of the menus.
  • The config.xml file contains configuration information used by the button.

Defining config.xml

The config.xml file must be in the following format
  • <ButtonConfiguration onlineUrl="" guidanceUrl="" toRecipients="" ccRecipients="" bccRecipients="" from="" author="" currentVersion="2" versionUrl="" sourceUrl="" standardSuffix=""/>

The attributes should be configured as follows:
  • onlineUrl: enter a url to check on startup for new content. e.g. The Add-in will download and update the content automatically. The file must contain the content you wish to be placed into button.xml. Leave this blank to provide no online updates.
  • guidanceUrl: enter a url to navigate to if the Guidance button is clicked on your menu. e.g. this may navigate to a poster which a user can print and place at their desk for a quick reference usage guide.
  • toRecipients: enter all the intended To recipients here.
  • ccRecipients: enter all the intended Cc recipients here.
  • bccRecipients: enter all the intended Bcc recipients here.
  • from: enter an account which the email should be sent from. If this is not provided then the default account will be used.

... and new in 1.5+
  • currentVersion: enter the version of your button, e.g. 1.0.
  • versionUrl: add the URL to the file which contains the version of your button. If this files contents do not match currentVersion, then the button will update itself using the button zip file found at the sourceUrl
  • sourceUrl: the url / path to the buttons .zip file.
  • standardSuffix: defines the suffix which will be removed when using Controlled Vocabulary in an existing email / meeting. E.g. if you create subjects as

Client Feedback ( your client ) - PLEASE COMPLETE SUBJECT

then you should set PLEASE COMPLETE SUBJECT as the standardSuffix so it is not used when updating an existing subject you have created

Defining buttons.xml

This button contains an xml fragment that is compatible with Outlook2010. Even if you don't use Outlook 2010, it must be in this format as other Add-ins will use to to display the information in their own format.

The buttons.xml file must be in the following format

Top level menu element with the following attributes
  • id="AnyUniqueID"
  • label="Your Main Button Label"
  • imageMso="Any mso Id" or image="Identifier...ImageName" e.g. ZuluMail...MyImage.png
  • size="large"

A combination of subelements

menu with the following attributes:
  • id="AnyUniqueID"
  • label="Your Main Button Label"
  • imageMso="Any mso Id" or image="Identifier...ImageName". Note, it is important that the image name contains Identifier... as this is used to search for the correct image.
This menu may contain button sub-elements

button with the following attributes:
or menuSeparator with the following attributes:
  • id="UniqueId"
  • title="Your separator title"


<menu id="NestedZuluMail" label="New Zulu Mail" size="large" imageMso="OutlookGlobe" itemSize="large">
<menu id="NewZuluMailBug" label="Bug:" image="ZuluMail...Red.png">
<button id="ZuluMail...bugArchitecture" label="Architecture" onAction="SendHigh" tag="Bug: Architecture - " screentip="Log an Architecture Bug" supertip="High Importance Recommended"/>
<button id="ZuluMail...bugBuild" label="Build" onAction="SendNormal" tag="Bug: Build - "/>
<menu id="NewZuluMailQuestion" label="Question:" image="ZuluMail...Yellow.png">
<button id="ZuluMail...questionArchitecture" label="Architecture" onAction="SendNormal" tag="Question: Architecture - "/>
<button id="ZuluMail...questionBuild" label="Build" onAction="SendNormal" tag="Question: Build - "/>
<menu id="newZuluMailAnswer" label="Answer:" image="ZuluMail...Green.png">
<button id="ZuluMail...answerAllBugs" label="Build" onAction="SendNormal" tag="Answer: Build - "/>
<menuSeparator id="separatorZuluMail" title="Other"/>
<menu id="NewZuluMailSuggestion" label="Suggestion:" image="ZuluMail...Blue.png">
<button id="ZuluMail...suggestionArchitecture" label="Architecture" onAction="SendLow" tag="Suggestion: Architecture - "/>
<button id="ZuluMail...suggestionBuild" label="Build" onAction="SendLow" tag="Suggestion: Build - "/>

Last edited Aug 14, 2011 at 10:17 AM by mikeFourie, version 25


No comments yet.