Andrew Whitechapel

Shiny things that caught my eye

Browse by Tags

Tagged Content List
  • Blog Post: MEF in Office?

    In my last post , I looked briefly at MEF, and I’m wondering how this model can be applied to Office add-ins. The Office add-in model itself already achieves a level of dynamic composition, by virtue of the fact that the set of add-ins to be loaded is only discovered at runtime. However, even though...
  • Blog Post: Silverlight Web Part in SharePoint

    Having looked at Silverlight in Office client , I thought I’d round out the exercise by looking at Silverlight in Office server . It turns out that lots of people have looked at this before, and I relied heavily on information from several other people’s blog posts (see below), the Silverlight Blueprint...
  • Blog Post: Silverlight Deep Zoom and Office Add-ins

    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 less a subset of WPF, then it makes little sense...
  • Blog Post: Exposing Events From Non-VSTO Add-in Automation Objects

    I posted a while back about exposing an automation object from an add-in that fires events . That post was couched in terms of VSTO add-ins. A customer asked recently how the same technique could be used in a non-VSTO add-in. So, that’s the topic of this post. First, here’s my automation object and...
  • Blog Post: Message Hooks in Add-ins

    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 apps are notoriously parsimonious with their...
  • Blog Post: Launching Office Apps Programmatically

    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 support. This has to be the...
  • Blog Post: Using Managed Controls as ActiveX Controls

    Can you use a managed usercontrol in an Office document in the same way that you can use a native ActiveX control – all without using VSTO? Some time ago, I posted about how to use native ActiveX controls within a doc-level VSTO solution, by wrapping them in managed usercontrols. A reader (Casey) asked...
  • Blog Post: Advances in .NET Type System

    Here at PDC, Misha Shneerson has just delivered a talk on a couple of very interesting new features provided by .NET 4.0. He did explain up front that these features have very broad applicability, but reading the session evals it's pretty obvious that a lot of people didn't get it. Probably this is because...
  • Blog Post: Exposing Events from Managed Add-in Objects

    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 Office OM, either directly (in a non-VSTO add-in...
  • Blog Post: AddInSpy - Diagnosing/Troubleshooting Office Add-ins

    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 are 2 tools: AddInSpy, which is a WPF GUI application...
  • Blog Post: Version-Specific UI in Add-ins

    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 PIAs (let’s say, the Office 2003 PIAs)...
  • Blog Post: COM Shim Wizard 2.3.1.0

    We’ve released a slight update to the COM Shim Wizard. This is available as a free download here , and the covering article is on MSDN here . The differences Between v2.3.0.0 and v2.3.1.0 are summarized below. Setup The major difference between v2.3.0.0 and v2.3.1.0 is that v2.3.0.0 was built to...
  • Blog Post: Add-ins for Multiple Office Versions without PIAs (Pt2), or _VtblGap

    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 interface – and I mentioned that this wouldn...
  • Blog Post: Add-ins for Multiple Office Versions without PIAs

    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 an add-in which has dependencies on a later version...
  • Blog Post: Ribbon and Task Pane in Access Add-ins

    In an earlier post , I looked at how you could morph a VSTO project for one application into a project for another application – specifically, how you could build a VSTO add-in for Access. Note that this is explicitly not supported. However, although this was only intended as an investigative exercise...
  • Blog Post: ActiveX Controls in VSTO Solutions

    In the past, before it became strategically acceptable to build Office-based solutions in managed code, it was common for people to build such solutions using pure COM technologies. They built native COM add-ins, using C/C++, or they built document-level customizations using VB and VBA. In some scenarios...
  • Blog Post: VSTO Power Tools

    I announced the release of v1 of the VSTO/VSTA Power Tools last time , and they've been getting quite a bit of use so far. The downloads are here - these include an overview document. Note that the documentation for the individual tools is installed in the same folder where you install the tools themselves...
  • Blog Post: VSTO/VSTA Power Tools v1.0

    As I announced at the Office Developers Conference in San Jose this week, we’re releasing a set of power tools that complement the developer’s experience when building Office-based or VSTA-based solutions. These tools are freely downloadable here . We’re releasing these tools independently of our normal...
  • Blog Post: Can you build one add-in for multiple versions of Office?

    This of course is the advantage of using the old "shared add-in" project types – you can build one add-in that targets all versions of all Office apps that support COM add-ins (ie, 2000 onwards). The question is, can you do something similar with VSTO add-ins? The answer is "No, not in any supported...
  • Blog Post: Why is VS development not supported with multiple versions of Office?

    First, the Office client apps are COM-based. Normal COM activation relies on the registry. COM registration is a "last one wins" model. That is, you can have multiple versions of a COM server, object, interface or type library on a machine at the same time. Also, all of these entities can be registered...
  • Blog Post: Office 2007 New Extensibility Interfaces

    Office 2007 introduced a set of new extensibility interfaces. Prior to Office 2007, there were several extensibility interfaces, which all behaved differently, required different development techniques, different deployment/registration and different runtime lifetime characteristics. These included ISmartTagRecognizer...
  • Blog Post: Microsoft .NET Development for Microsoft Office

    A number of people have reported that the link to the companion content seems to be broken. MSPress are aware of the problem, and are fixing it. Meanwhile, here's a direct link. http://download.microsoft.com/download/a/4/3/a433e8ad-25b5-420e-9126-292b380eb2f3/setup.exe Here's the main book link...
  • Blog Post: COM Developers are from Mars, VBA Developers are from Venus, or: Typing, Binding and Wrapping in Office Development

    I paused over my final mince pie today, and pondered the psychology of Office developers (as one does). Office development is a curious mix of different programming philosophies that has given rise to a number of interesting behavioral practices among developers. I picked the title for this post because...
  • Blog Post: Low-level support for ICustomTaskPaneConsumer, IRibbonExtensibility, FormRegionStartup, etc.

    I’m mostly interested in the runtime aspects of VSTO, and less interested in the RAD design-time aspects (however wonderful they are), and in this post I want to explore some of the low-level infrastructure that the VSTO runtime provides. As a developer building add-ins using VSTO, you mostly (and rightly...
  • Blog Post: The Anomalous Behavior of Custom Task Panes in Word and InfoPath

    Try this: create an add-in for Excel/Outlook/PowerPoint/Access with a custom task pane. Run the solution, see the custom task pane. Open another Excel workbook, see the custom task pane. Now, create an add-in for Word or InfoPath with a custom task pane. Run the solution, see the custom task pane. Open...
Page 1 of 2 (27 items) 12