I get so frustrated every time I read a MSDN article that warns developers not to deploy the Office 2003 PIAs. I am frustrated because the PIA problem in Office is a major pain in the ass and so far, nothing has been done to rectify it. Just to recap what myself and others have bitched about, here are the problems:
- Microsoft wants you to compile a version of your app for Office XP and a version for Office 2003 if you intend to support both
- Microsoft doesn’t want you to redistribute Office 2003 PIAs to any version of Office… ever.
- There is no way, short of telling the user to go find their system administrator and modify the office installation, that I know of to get the 2003 PIAs on a user’s machine if they were not installed the first time (which they are not by default).
- Microsoft doesn’t want you to use the freely redistributable Office XP PIA’s on Office 2003
These are big problems and make developing Office 2003 add ins very unattractive. It’s very rare that developing for Microsoft technologies gets more difficult with newer versions but that is what has happened.
Developers have found that they can solve many of these problems by ignoring Microsoft’s advice. Careless developers (like me when I wrote TEO 1.x) will cause additional problems by ignoring this advice, but they get around all of the above by either 1) deploying Office 2003 PIA’s or 2) using Office XP PIA’s with both versions.
Anyway if you’re going to do this, you should have the common courtesy to other developers to create an unmanaged shim and host your add-in in its own AppDomain. Then you won’t fuck with other add-ins that may be installed on your customer’s systems.
Omar’s got a great blog that deals frequently with Office add-ins.