Skip navigation
webburst
Currently Being Moderated

QtCore4.dll and QtGui4.dll

Dec 15, 2010 4:49 PM

Hello,

 

I have a question about Qt dll's. We createad a plugin for CS4 and CS5 using Nokia Qt 4.7.1 framework. It works fine, but we have to distibute our plugin with two dll's: QtCore4.dll and QtGui4.dll. We cannot put them next to .prm plugin file, because Premiere Pro will not try to find these dll's there - they should be in the same folder as "Adobe Premiere Pro.exe".  With CS4, we didn't have any problems with that, but we are having trouble with CS5. CS5 already has QtCore4.dll and QtGui4.dll, but they are old versions.

Our questions are - why does CS5 use Qt, for what purposes, and is it ok if we overwrite these dll's with new ones? Also, when we update PP CS5, it looks like it overwrites Qt dll's with old versions again. Is there any way to avoid it? Or is there any way to store and load dll's that we need from some other place (without using Qt static compilation, of course) ?

 

Thank you.

 
Replies
  • Currently Being Moderated
    Dec 15, 2010 4:57 PM   in reply to webburst

    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?

     
    |
    Mark as:
  • Currently Being Moderated
    Dec 15, 2010 6:36 PM   in reply to Zac Lam

    I would recommend that you ship the Qt.dll files with their version on them... eg Qt1.2.3.4.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.

     

    e.

     
    |
    Mark as:
  • Currently Being Moderated
    Dec 16, 2010 7:21 PM   in reply to webburst

    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.

     
    |
    Mark as:

More Like This

  • Retrieving data ...

Bookmarked By (0)

Answers + Points = Status

  • 10 points awarded for Correct Answers
  • 5 points awarded for Helpful Answers
  • 10,000+ points
  • 1,001-10,000 points
  • 501-1,000 points
  • 5-500 points