By default, Visual Studio automatically converts Office 2003 projects into Office 2007 projects when you open the project, if you have the 2007 Office system installed on your development computer. But you can change that default behavior.
Resources
Forum: Visual Studio 2008 converts its own Office 2003 project
Upgrading and migrating Office solutions
Project upgrade, options dialog box
Andrew Whitechapel's blog: Why is VS development not supported with multiple versions of Office?
Duration: 1 minute, 49 seconds
When you create a document-level customization for a document, all the copies of the document will be customized too. Even if you save a copy of the document with a different name, when the document is opened it'll try to find and run the code. All the saved data will still be there, it'll just pop up an annoying error message.
In this video I show a couple of ways to remove a customization from a document before you send it to someone.
ServerDocument.RemoveCustomization Method (2007 System)
ServerDocument.RemoveCustomization Method (2003 System)
ServerDocument Sample
Managing Documents on a Server by Using the ServerDocument Class
Duration: 2 minutes, 19 seconds
Our team is looking for feedback on how we can improve the deployment experience for VSTO document solutions. We are interested in hearing how you deploy your Excel spreadsheet/template and Word document/template solutions today & what sorts of improvements you’d like to see us make in the next version. Please use the Comment feature of this blog to tell us about your requirements.
Please specify if you are using VS 2005, VS 2008, Office 2007, or VBA.
How would you stack rank the following features?
We may not reply directly to every single comment, but we will read them carefully and use them to design future solutions for Office Developers. Thank you for your time and valuable feedback.
Sincerely,
Rachel Schaw
Updated August, 2008
I'd like to give you some insight into how we decide what goes into a Service Pack for Microsoft Visual Studio. I'm speaking specifically about how the VSTO team built SP1; most other groups within Visual Studio use the same process.
We take a few different approaches including:
In the last few months of product stabilization (which means the last few months before we shipped VS 2008), we make tough decisions to postpone some bugs to the Service Pack (SP). At some point around RTM, we schedule meetings to start prioritizing bugs for the SP.
The Visual Studio division is split into about a dozen Product Units, of which VSTO is a Product Unit. Twenty people from the VSTO unit met to prioritize bugs for the SP. We voiced opinions, quoted customers, demonstrated the bugs, and threw around cost estimates such as "Richard could fix it in three or four days" "No way, that is at least an 8 day work item and the workaround is straight forward!" Debates were often passionate because we are proud of our work, and care deeply about fixing any problems. We had three separate meetings over the course of a month to enable teams to refine their cost estimates and further research solutions. We prioritize on a couple of factors:
The second way we prioritize and document our Service Pack plans is to write scenarios. We hear feedback from you describing what you want to accomplish with our tools. So we take that feedback and write our feature descriptions using the first-person voice of the customer. We write both tasks and full end-to-end scenarios. If there is a bug that prevents the user from accomplishing the complete scenario, then that is a high priority bug fix for a Service Pack. For example, here are some of the scenarios that we addressed with Service Pack 1 to Visual Studio 2008:
By writing our designs in this format, we put ourselves in the place of the customer and create test cases appropriately. We also list the cost of each item in work-days and any risks or dependencies. Then we're able to make informed decisions about which scenarios and how many scenarios we can fix in a given number of work-months. After we've prioritized which features go into the SP, we then write more technical specs that define what is in scope, out of scope, assumptions, UI design diagrams, test specs, security threat models, and lists of dependencies on other teams and the locations of their code drops.
As of today, the VSTO team fixed 143 high severity bugs in the Office features of VS 2008. Five of the fixed bugs were submitted by customers using Connect. I don't have the total bug fix count for the entire division, but it is over a thousand. We are still a few weeks from releasing the Service Pack and we hope to squeeze in a few more critical bug fixes.
We focused on delivering two core scenarios enabling easier deployment and enabling adding Host Controls to application-level add-ins. In the final documentation that will release with SP1, there is a section describing what's new in SP1. Here's the text that you will see in the SP1 documentation after we ship:
What's New in Visual Studio Tools for Office Visual Studio 2008 Service Pack 1 (SP1) contains updates and new features that affect Visual Studio Tools for Office. The SP1 changes are listed separately from the Visual Studio 2008 features to help you find the latest additions quickly. Visual Studio 2008 SP1 includes features that are designed to help you accomplish the following tasks: Add Host Controls and Smart Tags to Add-in Projects You can add smart tags and host controls, such as content controls in Word 2007 and list objects in Excel 2007, to documents in application-level add-in projects. These managed host controls behave like native Office objects, but with added functionality such as events and data-binding capabilities. To get started, see Adding Controls to Office Documents at Run Time and Smart Tags Overview. Deploy the Office Primary Interop Assemblies with Your Solution Installer When you use ClickOnce to deploy solutions for the 2007 Microsoft Office system, the Microsoft Office 2007 Primary Interop Assemblies are automatically selected as prerequisites. The primary interop assemblies are copied to the same deployment folder as your solution installer. To get started, see How to: Install Prerequisites on End User Computers to Run Office Solutions (2007 System). Rapidly Deploy Your Solution with the .NET Framework Client Profile You can now specify the .NET Framework Client Profile as the target Framework version. This smaller version of the .NET Framework decreases the size of your solution during installation by not including all of the Framework assemblies. You can use this with your solutions for the 2007 Microsoft Office system. To get started, see Creating Office Solutions in Visual Studio. Troubleshoot Installation with the Event Viewer · When you install or uninstall Visual Studio Tools for Office solutions, the Visual Studio Tools for Office runtime logs error messages that you can view by using the event viewer in Windows. You can use these messages to help resolve installation and deployment problems. To get started, see Event Logging (2007 System).
Visual Studio 2008 Service Pack 1 (SP1) contains updates and new features that affect Visual Studio Tools for Office. The SP1 changes are listed separately from the Visual Studio 2008 features to help you find the latest additions quickly. Visual Studio 2008 SP1 includes features that are designed to help you accomplish the following tasks:
You can add smart tags and host controls, such as content controls in Word 2007 and list objects in Excel 2007, to documents in application-level add-in projects. These managed host controls behave like native Office objects, but with added functionality such as events and data-binding capabilities.
To get started, see Adding Controls to Office Documents at Run Time and Smart Tags Overview.
When you use ClickOnce to deploy solutions for the 2007 Microsoft Office system, the Microsoft Office 2007 Primary Interop Assemblies are automatically selected as prerequisites. The primary interop assemblies are copied to the same deployment folder as your solution installer.
To get started, see How to: Install Prerequisites on End User Computers to Run Office Solutions (2007 System).
You can now specify the .NET Framework Client Profile as the target Framework version. This smaller version of the .NET Framework decreases the size of your solution during installation by not including all of the Framework assemblies. You can use this with your solutions for the 2007 Microsoft Office system.
To get started, see Creating Office Solutions in Visual Studio.
· When you install or uninstall Visual Studio Tools for Office solutions, the Visual Studio Tools for Office runtime logs error messages that you can view by using the event viewer in Windows. You can use these messages to help resolve installation and deployment problems.
To get started, see Event Logging (2007 System).
I hope this explanation gives you some insight into the people on my team who build the Office features in Visual Studio and the process we use to prioritize our work.
-Christin Boyd, Program Manager, Microsoft.
-Mary Lee, programming writer, Microsoft.
This video tells the story of someone who created an Excel 2003 workbook project in Visual Studio 2008. No matter what configuration he tried on the client machine, he got this error when opening the workbook:
The assembly could not be found or could not be loaded.
Here's the setup: Windows XP Professional PIAs for Office 2003 are installed VSTO version 3 runtime is installed The .NET 2.0 configuration tool shows the assembly is trusted CASPOL.exe shows the assembly is trusted
Fortunately, the story has a happy ending.
Resources:
Forum post: The assembly * could not be found at or could not be loaded
Visual Studio Tools for Office Second Edition Runtime
How to: Install the Visual Studio Tools for Office Runtime
Video duration: 1 minute, 36 seconds
All of the Visual Studio and .NET Framework hotfixes that are publicly available on MSDN Code Gallery are now localized in the following languages: French, Spanish, Italian, German, Traditional and Simplified Chinese, Japanese, Korean, Russian, and Brazilian Portuguese. You can browse the list of Hotfixes on MSDN CodeGallery here: http://code.msdn.microsoft.com/Project/ProjectDirectory.aspx?TagName=Hotfix. MSDN Code Gallery allows the community to provide feedback on our hotfixes and they can stay informed when a new hotfix is released by subscribing to the following RSS feed: http://code.msdn.microsoft.com/rss.ashx?behavior=bytag&TagName=Hotfix. You can customize your RSS feed by adding additional tags, such as “Visual Studio 2008.” The Hotfixes will not necessarily be tagged with “VSTO” if they pertain to Office development because that is not part of the Hotfix taxonomy of tags. The Hotfixes are usually just tagged with the version of Visual Studio or the version of the .NET Framework, and often not tagged with the sub-part of the feature within VS.
Below, we’ve highlighted how the translation options appear in each hotfix resource page. When a community member selects a language, it will take them to a resource page where they can read the localized KB article content and details for the hotfix they’ve selected. The full description of the Hotfix is documented in a Knowledge Base (KB) article on the Help and Support site. The KB article and the Hotfix download pages are cross referenced and circled in red.
Below you can see the same page in Simplified Chinese, with the link to the KB article circled in red:
-Christin Boyd, Program Manager, Visual Studio
You can override Ribbon commands and run your own code for Save or Save As, or you can simply cancel attempts to save a document in the DocumentBeforeSave event handler.
Code and resources:
Forum post: Microsoft Word 2007 Disable Save As
Temporarily Repurpose Commands on the Office Fluent Ribbon
DocumentBeforeSave event
Video duration: 51 seconds