> Is application dependency management in windows normally a problem?
It has its own name.
It has its own name.
No wonder everything gets so messy in the registry :)
An application may for instance say that it accepts any newer "minor" version.
For security patching you can replace a library with a new "build". So if an application uses libraries placed in WinSxS or the GAC it will pick up any centrally patched libraries without the risk of jumping to a too new version with breaking changes. The new version can exist alongside older versions and they can all be patched - for security reasons or otherwise.
A vendor can also distribute libraries alongside the application - in the application library itself. In that case the responsibility for patching is placed squarely on the vendor of that application.