Would you be able to just use the version that ships with Premiere Pro? Or is there new functionality that you depend on in the newer version?
I would recommend that you ship the Qt.dll files with their version on them... eg Qt18.104.22.168.dll and then install them in your distribution.
On Windows the place that is supposed to be is...
C:\Program Files\Common Files\[Company Name]\*.dll
It's then your responsibility during installation of the plugin (eg in InstallShield) to make a system environment variable
eg %COMPANYNAME_BIN%= C:\Program Files\Common Files\[Company Name]\
and append ";%COMPANYNAME_BIN%" to the %PATH% so that the .prm dll can find it during launch.
Then you shouldn't get version clashes any more.
No, because CS5 requires 64 bit compilation for plugins and all the version of Qt 64 binaries that we have is 4.7.1. Even if we recompile Qt to use the same version as in CS 5.0.0, after user updates his Premiere Pro to, let's say, CS 5.0.3, he gets newer versions of Qt that may not work with our plugin (Trolltech promised backwards compatibility for their dlls, but in fact it doesn't really work so well). So.. let me ask the question this way - "How can we isolate third party dll's that our .prm plugin uses from "Abode Premier Pro.exe" (without using run-time dynamic linking) ?".
Well the problem is not in where to put Qt...dll. The problem is in the filenames of the dll's. We cannot just rename them because they are not run-time loding dll's. To make Qt dll's with custom names, we would need to recompile whole Qt framework with special keys and in 64 bit mode - it will cause many other problems.
You could manually open the DLL with LoadModule() and that way point to your one explicitly.
I big pain in the butt to be sure but you would then have 100% control of what DLL you open.