Shipping apps using SxS assemblies

This came up one more time today, so I have decide to blog two links to well-done KB articles.

1) Applications that bypass globally serviced side-by-side assemblies may be vulnerable to issues that are fixed by a Microsoft software update - recommendation learned in hard way

2) GDI+ 1.0 Security Update Overview - a hard lesson

Long story short, several recommendation that were learned from mistakes made by others, you may find usefull for you:

- ship your applications with manifest that enumerates sxs assemblies used in this application

- always deploy manifest for SxS assemblies, even if you deploy applocal.

- If OS already installs this assemblies in WinSxS, do not install them applocal

- DLL/COM redirection is a nice feature, but do you really want to use it?

- Do not explicitely specify path to a library in LoadLibrary() call.

- Use <publisherPolicy apply="no"/> with caution.

Go ahead and read these articles. MSDN also has many pages on isolated applications, side-by-side assemblies.