Delphi 7 for MS Outlook, Excel, PowerPoint add-in / plug-in - HowTo
Delphi VCL HOWTOs
- How to develop your first add-in for Microsoft Office
- How to create your first Microsoft Outlook add-in
- How to create your first RTD server
- How to write your first Excel Automation add-in
- How to develop your first smart tag in Delphi
- How to move a custom VCL form embedded into Outlook window from one form region to another
- How to cache forms embedded into Outlook Explorer windows
- How to change the size of a form embedded into Outlook window
- How to identify the form in an Advanced Form region
- How to control the visibility of a form in an Advanced Form Region
- How to use several forms in the same Advanced Outlook Form Region
- Events of Reading Pane, Navigation Pane, and To-Do bar
- How to switch between the standard Outlook explorer view and WebViewPane view
- How to re-size an Excel task pane
- How to build a context-dependent Advanced Excel Task Pane
- How to use several Advanced Excel Task Panes in one position
- How to set the visibility of Advanced Excel Task Pane
- How to handle the FrontPage OnWindowActivate event in Delphi
- How to handle the ItemSend event of MS Outlook
- How to handle the TaskChange event of MS Project
- How to handle the WorkbookBeforeSave event of MS Excel in Delphi
- How to scan Outlook folders
- How to handle the MouseClick event on presentation's objects (PowerPoint)
- How to handle Outlook's SelectionChange event in Delphi
- How to get access to the MAPIFolder within Outlook Property Page
- How to handle the ExplorerClose event (Outlook) in Delphi
- How to add custom menu items to the popup menu in Outlook Explorer
- How to create a command bar and command bar controls at run time (for Excel) in Delphi
- How to create a command bar and command bar controls at run time (for Outlook)
- How to change the CommandBarComboBox (TadxCommandBarComboBox) properties at run time
- How to pass a parameter to an RTD function in Delphi
- How to work with a command bar button at run-time in Delphi
- How to use Add-in Express 2 with projects based on Add-in Express 1.x.
- How to save and restore the position of Outlook temporary command bar in Delphi
- How to handle the BeforeCheckNames event of the Outlook MailItem interface
- How to use dbs as a data source for RTD servers
- How to create a custom Office toolbar in Delphi?
- How to add a property page to the Tools | Option menu in Outlook?
- How to add a property page to the Tools | Option menu in Outlook?
- How to create a custom pane in Excel 2000, 2002, 2003, 2007?
- How to intercept keyboard combinations pressed by the user?
- How to use MSForms components in my add-in?
- How to create a simple Smart Tag in Delphi?
- How to implement a custom recognizer for a Smart Tag?
- How to create a custom Excel UDF in Delphi?
- How to create a simple RTD server?
- How to connect to FolderAdd, FolderChange, and FolderRemove events in Outlook?
- How to connect to ItemAdd, ItemChange, and ItemRemove events in Outlook?
- How to create a pane in Outlook 2000, 2002, 2003, 2007?
- How to create an Outlook Bar shortcut in Delphi?
1. How to develop your first add-in for Microsoft Office
You can find this Delphi 7 and Delphi 2006 project in the Add-in Express online Developer's Guide (see Creating your first Office add-in in Delphi). It demonstrates the following features of Add-in Express 2007 for VCL:
- Office COM add-in that supports all versions of several Office applications (Excel and Word)
- CommandBars and command bar controls
- Office 2007 Ribbon controls in Ribbon tabs and Office menu
- Office 2007 task panes
- Handling application-level events
Find the complete list of Add-in Express VCL features for developing Office plug-ins page.
2. How to create your first Microsoft Outlook add-in
Please see this Delphi 7 and Delphi 2006 project in the Add-in Express online documentation (see Developing your first Outlook add-in). From that sample you will learn how to:
- Develop a plug-in that supports all Outlook versions: from Outlook 2000 to Outlook 2007.
- Create Outlook-specific toolbars and command bar controls.
- Build Office 2007 Ribbon controls in Ribbon tabs and Office menu.
- Create Office 2007 task panes.
- Add custom property pages to the Tools | Options and Folder Properties dialogs.
- Handle Outlook events.
- Handle events of the Items collection (covers adding, removing, or changing Outlook Items).
- Handle keyboard shortcuts.
Find the complete list of Add-in Express for Delphi features for building Outlook plug-ins. See also Add-in Express VCL flash video.
3. How to create your first RTD server
See how to build an Excel Real-Time Data server step-by-step in the online Add-in Express Developer's Guide (Building Excel RTD server). The sample RTD server project is written in Delphi 7 and Delphi 2006.
4. How to write your first Excel Automation add-in
This sample Excel Automation add-in in Delphi 7 and Delphi 2006 is described in online Add-in Express documentation (see Excel Automation add-ins).
5. How to develop your first smart tag in Delphi
Find how to program smart tags in Delphi 7 and Delphi 2006 in online Add-in Express documentation (see Programming smart tags). See also Add-in Express VCL smart tag flash video.
6. How to move a custom VCL form embedded into Outlook window from one form region to another
This sample add-in written in Delphi 7 shows how you can change a layout of your custom VCL form embedded into Outlook windows. The add-in creates a commandbar (a Ribbon tab in Office 2007) and allows choosing the layout from a combo box.
The form used in this sample processes the SelectionChange event of Outlook Explorer. Source code included.
7. How to cache forms embedded into Outlook Explorer windows
This Delphi 7 sample demonstrates the Advanced Form Region caching functionality available for forms embedded into Outlook Explorer windows. The developer can use this functionality to keep form data when the user switches between folders.
There are three caching options for such forms: Non-cached, NewInstanceForEachFolder, and OneInstanceForAllFolders.
Forms embedded into Outlook Inspector windows are always non-cached.
8. How to change the size of a form embedded into Outlook window
This Delphi 7 add-in demonstrates the form-sizing features available for Advanced Form Regions in Outlook 2000-2007.
There are two options depending on the visibility of the splitter (as set by the developer): if the splitter is visible, the user can change the form size and the developer can not. To change the form size programmatically, the developer sets the Splitter.Visible property to false.
9. How to identify the form in an Advanced Form region
This Delphi 7 example shows how to identify the instance of the form embedded into an Outlook window. You have several forms marked with a GUID. When you click a toolbar button (a Ribbon button in an Outlook 2007 inspector), the add-in identifies the currently active form instance and shows its GUID.
10. How to control the visibility of a form in an Advanced Form Region
This Delphi 7 sample add-in demonstrates the typical use of forms embedded into Outlook windows: hiding and showing the form in Explorer and Inspector windows.
11. How to use several forms in the same Advanced Outlook Form Region
This add-in demonstrates how to use several custom forms embedded into the same Advanced Outlook Form Region. Click on a RadioButton on the Controlling form to activate the corresponding ADXOlForm. More about Advanced Outlook Form Regions.
12. Events of Reading Pane, Navigation Pane, and To-Do bar
This sample project for Delphi 7 demonstrates the use of events missing in Outlook:
- Show / hide Navigation Pane (FolderList, Outlook Bar)
- Show / hide / move Reading Pane (Preview Pane)
- Show / hide / minimize To-Do Bar
More about customization of Outlook Navigation pane, Reading pane, To-Do bar.
13. How to switch between the standard Outlook explorer view and WebViewPane view
This sample Outlook add-in shows how you can switch between the standard Outlook explorer view and the WebViewPane view.
14. How to re-size an Excel task pane
This Delphi7 sample demonstrates the form-sizing features available for Advanced Task Panes for Excel 2000-2007. There are two options depending on the visibility of the splitter (as set by the developer): if the splitter is visible, the user can change the form size and the developer can not. To change the form size programmatically, the developer sets the Splitter.Visible property to false.
15. How to build a context-dependent Advanced Excel Task Pane
The Delphi 7 sample for Excel dynamically shows / hides an Advanced Excel Task Pane when cell A1 contains or doesn't contain any value.
16. How to use several Advanced Excel Task Panes in one position
This Delphi 7 example shows how you can use several Excel task panes in one position. Click to a RadioButton on the Controlling Task Pane to activate the necessary TadxExcelTaskPane. Find more about Advanced Excel task panes.
17. How to set the visibility of Advanced Excel Task Pane
This Excel sample for Delphi7 demonstrates how to prevent TadxExcelTaskPane from being shown and how to show it from the command bar.
18. How to handle the FrontPage OnWindowActivate event in Delphi
19. How to handle the ItemSend event of MS Outlook
20. How to handle the TaskChange event of MS Project
21. How to handle the WorkbookBeforeSave event of MS Excel in Delphi
22. How to scan Outlook folders
23. How to handle the MouseClick event on presentation's objects (PowerPoint)
24. How to handle Outlook's SelectionChange event in Delphi
25. How to get access to the MAPIFolder within Outlook Property Page
26. How to handle the ExplorerClose event (Outlook) in Delphi
27. How to add custom menu items to the popup menu in Outlook Explorer
28. How to create a command bar and command bar controls at run time (for Excel) in Delphi
29. How to create a command bar and command bar controls at run time (for Outlook)
30. How to change the CommandBarComboBox (TadxCommandBarComboBox) properties at run time
31. How to pass a parameter to an RTD function in Delphi
32. How to work with a command bar button at run-time in Delphi
33. How to use Add-in Express 2 with projects based on Add-in Express 1.x.
34. How to save and restore the position of Outlook temporary command bar in Delphi
35. How to handle the BeforeCheckNames event of the Outlook MailItem interface
36. How to use dbs as a data source for RTD servers
37. How to create a custom Office toolbar in Delphi?
This Delphi sample shows how to develop a custom Excel command bar and a command button.
38. How to add a property page to the Tools | Option menu in Outlook?
39. How to add a property page to the Tools | Option menu in Outlook?
This sample add-in written in Delphi 7 adds several items to an Outlook context menu and connects to their Click events via IConnectionPoint.
40. How to create a custom pane in Excel 2000, 2002, 2003, 2007?
This sample demonstrates creating a custom Excel task pane. Also, it highlights the process of changing the position of the task pane programmatically.
41. How to intercept keyboard combinations pressed by the user?
This sample add-in for Outlook intercepts Alt+W, Alt+R, Alt+L
42. How to use MSForms components in my add-in?
This sample shows how to use MSForms components in add-ins for Word and Excel versions 2000-2007.
43. How to create a simple Smart Tag in Delphi?
44. How to implement a custom recognizer for a Smart Tag?
45. How to create a custom Excel UDF in Delphi?
This sample Excel Automation add-in in Delphi shows how to create user-defined functions.
46. How to create a simple RTD server?
This sample RTD server allows entering the following formula in an Excel cell:
"=RTD("MyFirstRTDServer.MyRTDServer","","NewTopic")"
47. How to connect to FolderAdd, FolderChange, and FolderRemove events in Outlook?
48. How to connect to ItemAdd, ItemChange, and ItemRemove events in Outlook?
49. How to create a pane in Outlook 2000, 2002, 2003, 2007?
50. How to create an Outlook Bar shortcut in Delphi?

