Browse by Tags
All Tags »
VSTO »
VSTO Add-ins (RSS)
HLSL is the High Level Shading Language for DirectX, documented here . I was wondering the other day how you might use shaders in Office, and this led me to build a little proof-of-concept that allows you to experiment with HLSL within the context of
Read More...
I had some ‘free’ time today waiting to give a demo at an MVP conference session – the session over-ran, and I found myself sitting in the hallway for an hour. So I got to thinking about Silverlight and Office. If we assume that Silverlight is more or
Read More...
Just like my earlier post on message filters , this is an advanced scenario – so be warned: you almost certainly don’t want to do this . However, there are probably some extreme edge-case scenarios where this technique might be useful. For example, Office
Read More...
There are at least 9 different ways to start or connect to an Office app programmatically in managed code, as summarized in this table: PIA Interop Using the Office PIAs is the most RAD approach, with the greatest level of design-time and compile-time
Read More...
I’ve posted a few times on the best way to expose methods from an add-in to automation clients – for example, here , here and here . So far, in my examples, I’ve described very simple exposed methods that take no parameters – but what happens if you want
Read More...
First a warning: this is an advanced scenario, and you should not attempt to use this technique unless you’re sure you know what you’re doing. The reason for this warning is that while the technique described here is pretty simple, it’s also easy to get
Read More...
Following on from my recent posts on exposing add-in objects, here and here , it occurred to me that its sometimes useful to be able to expose events from these objects. Recall that you can expose your add-in through the COMAddIn.Object property in the
Read More...
AddInSpy is a new diagnostic tool for reporting the maximum possible information about all Office add-ins registered on a machine. This is a free (unsupported) download, available on MSDN Code Gallery here . Covering article on MSDN here . In fact, there
Read More...
Continuing on from my earlier posts on building add-ins for multiple versions of Office , avoiding the PIA version conflict , and add-ins for multiple versions without PIAs , a reasonable way to design your solution would be to use the lowest-common-denominator
Read More...
You can expose an arbitrary object from your add-in as a kind of extension to the Office host application’s object model. To do this, you set your object as the value of the Object property on the COMAddIn object that represents your add-in in the host’s
Read More...
In general, it is important that any code in a managed Office add-in should execute on the main UI thread. The reason for this is that there are several components that simply will not work when executed from any other but the main UI thread – examples
Read More...
I received an email from a customer the other day asking how to set up an Excel pivot table programmatically. The Excel OM exposes a number of objects and methods that you can use to create pivot tables, some more sophisticated than others. I wanted the
Read More...
In an earlier post , I talked about how you could delay (or prevent) the loading of managed code using a native add-in. In that post I also listed the standard LoadBehavior settings, and I was assuming that everyone knows how these apply, but I got a
Read More...
In my last post , I discussed how you could avoid any dependency on the Office PIAs by using ComImport to redefine the host application’s OM interfaces. Someone (A Developer) pointed out that I had actually omitted the trailing 2 members of the IRibbonControl
Read More...
In a previous post , I discussed how you could build an add-in for multiple versions of Office, and explained the problems in this approach (and why it is not officially supported). One of the reasons this is not supported is because you end up building
Read More...