| Tools Updated for Office 2007 |
| Jan. 8, 2007 |
|
A free update to Visual Studio 2005 Tools for Office (VSTO 2005) offers support for Office 2007 and its new user interface, as well as more flexible options for building and deploying applications for Office 2003. The update is the latest step in Microsoft's decade-long effort to make Office an integral part of corporate line-of-business applications, instead of merely a tool for creating documents, in hopes of spurring Office upgrades and staunching moves to browser-based or competitive alternatives, such as ASP.NET applications, Google Spreadsheets, or OpenOffice. However, the update's integration with Visual Studio and previous versions is somewhat spotty. The formal name of the update is Visual Studio 2005 Tools for the 2007 Microsoft Office System, but Microsoft usually refers to it as Visual Studio Tools for Office 2005 Second Edition (VSTO 2005 SE). Application-Level Add-Ins, with Caveats VSTO 2005 SE adds the ability to create application-level add-ins for Office applications. With the exception of Outlook, previous versions of Office and VSTO supported only document-based add-ins, which are tied to a specific document template and are enabled only when a document based on that template is active. For example, a custom expense-reporting spreadsheet might include an add-in for looking up expense codes from an enterprise resource planning system. When a spreadsheet is created with the expense-reporting template, the add-in for looking up codes is available but a spreadsheet based on a different template will not be able to look up codes. Although document-level add-ins have advantages, developers sometimes want to create add-ins that are available from within any document. For example, users creating spreadsheets might want to be able to access recent sales figures from within any spreadsheet. VSTO 2005 SE allows developers to create such application-level add-ins for Office 2003 and 2007. Application-level add-ins are deployed as .NET assemblies and registered with the appropriate Office application. However, VSTO 2005 SE is not a complete replacement for VSTO 2005 and does not support document-level add-ins. Developers who need to create both application-level and document-level add-ins must have both the new and previous editions of VSTO installed. Developers who have not purchased VSTO 2005 (or one of the Visual Studio 2005 Team Edition versions, which include VSTO functionality) and instead download only the free new version are limited to application-level add-ins. Office 2007 Supported but Tools Not Ready VSTO 2005 SE allows developers to build extensions to Office 2007's user interface. Specifically, it allows developers to create custom ribbons—Office 2007's replacement for the traditional menu system. However, the tool does not offer a WYSIWYG editor for ribbons. Instead, developers must create and edit ribbons as text-based XML files. Visual Studio has several ways to help developers create XML files, including auto-completion, which automatically completes XML tags that the developer has begun to enter into the editor, and IntelliSense, which offers a drop-down menu of choices based on the cursor's location in the XML file. Nevertheless, editing a ribbon is significantly harder than it would be if VSTO provided a drag-and-drop graphical editor. Developers looking for that kind of support will have to wait until the next update of VSTO. In addition, unlike Office 2003, Office 2007 can't be hosted inside VSTO. For example, a developer using Excel 2003 can create a financial spreadsheet that includes custom toolbars and can write the code for those toolbars directly from within VSTO. With Office 2007, the developer must create the spreadsheet using Excel 2007 and the code using VSTO and then combine the two. Outlook Forms Regions Finally, VSTO 2005 SE allows developers to extend standard Outlook forms, such as the form used to enter a calendar appointment or contact. For example, a developer could use VB.NET or C# to add custom code that links Outlook's task forms to a billing system. The developer first creates the custom form using Outlook's built-in form designer and then uses VSTO to write the custom code. However, the integration with Outlook is spotty: the developer must write a considerable amount of boilerplate code just to get the connection to Outlook to work properly. Availability and Resources VSTO 2005 SE can be downloaded from www.microsoft.com/downloads/details.aspx?familyid=5e86cab3-6fd6-4955-b979-e1676db6b3cb. The new Office 2007 user interface is described in "Office 2007 Ships with New User Interface". The VSTO home page is msdn.microsoft.com/vsto. Technical details on document-level and application-level customizations can be found on the blog of Andrew Whitechapel, an architect on the VSTO team, at blogs.msdn.com/andreww/archive/2006/07/31/684595.aspx. |