Add-in Express vs. VSTO – Microsoft Office developer happiness
This being the eighth and final instalment of the Add-in Express vs. VSTO series, I thought I’d wrap up with what could possibly be the most important feature of Add-in Express: Developer Happiness.
Let’s face it; we do our best work when we enjoy what we do. I know I do. Add-in Express makes creating Microsoft Office add-ins fun. It’s great to have an idea, fire up Visual Studio and have a proof of concept within a few minutes and with zero frustration. Personally, I think having Add-in Express when developing Office extensions should be part of the Programmer’s Bill of Rights, let’s see why.
For developers, by developers
I think what makes Add-in Express such a great tool to use, is that it was initially developed by Add-in Express for their own use in their Office development projects, essentially it is designed and developed for developers, by developers.
Finish the Office add-in in record time
From the moment you choose File > New Project > ADX COM Add-in, Add-in Express takes care of getting the core architecture in place to help you produce commercial-class Office extensions in the shortest time possible.
Your programming language of choice
With Add-in Express you can create Office extensions in the programming language of your choice, you can use either Visual C#, VB.Net, C++/CLI and Visual J#. No need to learn a new programming language, use what you know.
Several extensions in one project
If you want to create an Office Add-in that will give your users a few custom Excel formulas, Real-time Data (RTD) server support as well as a number of Outlook UI customizations and additions, you no longer need to build individual projects. Add-in Express allows you to integrate multiple Office extensions into one binary. You can mix COM add-ins with Excel XLL’s and RTD’s.
Combining several Office extensions in one project enables you to better share global data, such as application settings, region states, etc. between various add-ins. This makes debugging and supporting your add-ins much easier as you only have one codebase to work with. Each add-in is isolated in its own app domain, but at the same time it is also possible to put several add-ins into the same app domain.
It also streamlines your deployment process, due to the fact that your users would only need to run one setup program.
RAD for radical? No! RAD for Rapid Application Development. But I suppose radical could also be true, when it comes to Add-in Express components.
When you start a new ADX COM Add-in project, Add-in Express creates an add-in module in your solution. This module gives you access to each host application object and a large number of events, such as AddinStartupComplete, AddinBeginShutdown, OnTaskPaneAfterCreate and OnSendMessage to name but a few.
Each add-in module also gives you access to various properties (such as FolderPages) which can be used to access a collection of property pages. You can even add your own property page for the Folder Properties dialog.
Built-in visual designers
Add-in Express provides visual designer for all UI components. This means there is no guess work involved when building your add-ins’ UI. You no longer need to build your Office Ribbon or Backstage view with XML. All Add-in Express designers has support for the standard .Net image list component, which means when you want to add icons to your UI elements, you do not need to write any code in order to load or show images on controls.
With Add-in Express it is “what you see is what you get”.
Visual Studio version independent
You can use any version of Visual Studio with Add-in Express. Add-in Express is designed to work with Visual Studio 2005, 2008, 2010 and will work with Visual Studio 11 as well, when it’s officially released.
Add-in Express will work with any edition of Visual Studio from Express right up to Visual Studio Ultimate.
Microsoft Office independent
Any version of Office can be installed on the developers’ machine, from Office 2000 to 2010 (32 and 64-bit). All editions of Office are also supported e.g. Home and Student, Standard, Small Business and Professional, etc.
Office isn’t actually needed on the developer’s machine in order for the developer to use the Add-in Express suite of components, although it is strongly advised to install the minimum version of Office your add-in needs to support.
If your organisation is using a build server, you do not need an additional license for the build machine or even Visual Studio, you can use the SDK and MSBuild.
Before I wrote these articles for Add-in Express I was one of their customers. One thing that immediately struck me was how quick and friendly their support staff was to answer your questions and answer them correctly on top of it all!
Our blog and forums are probably amongst the richest sources of Microsoft Office development information and help available on the Internet. On many occasions I found answers on the Add-in Express forums that I could not find anywhere else on the web.
Add-in Express is one of the few companies that allows you to ask questions to their core developers, so you know the answer you get is the right one. Andrei and Eugene are also always there to help with solution research and code review. Trust me, I’ve had my code reviewed by Andrei a few times, he knows what he’s talking about : )
Folks, I sincerely hope you’ve enjoyed his series of articles and I urge you as a fellow developer, which believes in enjoying what he does, to not even consider starting your next Office Add-in without Add-in Express. You are welcome to ask us any question on this or any other Office development topics via the official Add-in Express Twitter account, Facebook or drop me a line.
Thank you for reading. Until next time, keep coding!
Last updated: 8-Feb-2013
Add-in Express vs. VSTO:
- Part 1: Add-in Express vs. Visual Studio Tools for Office
- Part 2: Version neutrality for your Office extensions
- Part 3: Visual designers for Office Ribbon UI customization
- Part 4: Backstage View and context menu visual designers
- Part 5: Outlook regions
- Part 6: Custom Office task panes
- Part 7: Office add-in deployment