During out of process debugging occasionally the pdb file becomes locked and prevents builds from finishing successfully. The VstaDesignTimeIntegration . DeleteMacroPdb method, called in OnBuildBegin, is suppose to ensure that this does not happen by cycling until the bits are no longer locked, then...
With the introduction of LINQ to XML and the OpenXml formatting of Office 2007 documents it is incredibly easy to use VSTA to import and export data from a host application to an Office document and vice versa. One benefit of using OpenXml (or for Excel straight xml as well) is that this can be performed...
In seamless non-destructive debugging scenarios (macro recording and running) the host application must keep track of the latest version of the “macro” project assembly. The IDE offers the user many opportunities to change settings like the active configuration or the output path which can make it difficult...
ProxyGen does not support nested types; however, with a little manual editing of the descriptor and proxy files nested types can be supported in the Proxy. There are three kinds of nested types that will be covered in this blog series (non-entry point, entry point , and i mplicitly declared events )...
As mentioned in Part III, any events an add-in hooks into should be unhooked in the add-in, presumably in the Shutdown method. Unfortunately, if the add-in does not unhook from an event this can cause problems- namely that the host application will continue to attempt to reach the add-in code when the...
To declare non-custom events to expose to VSTA is fairly straight forward in C#. For Visual Basic, the events should* be declared explicitly (for more information on using implicitly declared events, see the workaround ). This is because VB hides implementation for implicitly declared events and creates...
An updated version of the MyApp VB6 sample demonstrating VSTA v 1 inegration sample is now available for VSTA v 2. Check out the MyApp VB6 sample demonstrating VSTA v 2 inegration sample here.
Post build events are very important in VSTA (versions 1 and 2). They are used to install files in the GAC, organize DLL's for add-in discovery, and in VSTA v 2, to rebuild the pipeline. Here are the files used in post build events by the ShapeApp samples, the commands which run them, and some information...