DavidThi808

Hi;

This is for others that might hit the same thing. As I understand it, when you link to a strong named DLL for a program, the program uses that specific DLL and no other version or one with a different hash. That was done to stop the old DLL Hell problem.

Except for Office AddIns (IDTExtensibility2, not VSTO in our case)

If your AddIn is linked to say VBE 11.0.0.0 and is then run on a system that also has VBE 12.0.0.0 on it - Word will have your AddIn linked to the version 12 DLL, not the version 11 one.

It seems to work ok for us in this case. But keep in mind that strong naming basically is ignored for the PIAs for your AddIn. And that could cause problems. (It's also very weird that strong naming is just thrown out the window for AddIns.)

thanks - dave




Re: Visual Studio Tools for Office PIA version weirdness

Phil Hoff - MSFT

Strongly named assemblies can be redirected to newer (or, rather, different) versions via a "publisher policy" or .NET application configuration file. Redirections can be used, for example, to fix issues in a previous version of an assembly. All applications dependent upon that assembly can then make use of the fix without recompilation. Obviously, authors of a new assembly employing redirection must be certain that their changes are backward compatible.

Specifically, references to the Office 11 PIAs are redirected to their Office 12 versions.

For more information, you can read the following articles:

How the Runtime Locates Assemblies: http://msdn2.microsoft.com/en-us/library/yx7xezcf.aspx

Office Primary Interop Assemblies: http://msdn2.microsoft.com/en-us/library/15s06t57(VS.80).aspx

-Phil





Re: Visual Studio Tools for Office PIA version weirdness

DavidThi808

Ok, I was not aware of that. We've changed our check to accept the same or a newer version (we only showed a warning so it was not a big deal). And it does seem to run ok.

thanks - dave