3rd party libary simply doesn't work, no errors, just noda
-
I am using NCReport to run reports and do printing within my Windows Qt application. Everything works fine on my development machine, but in the clean VM install machine the plugin simply does not run. I have tried linking NCReport in both statically and dynamically, and in both cases I get the results, nothing.
It is not that it crashes, I simply get nothing. What is supposed to happen is my print dialog comes up, then you press the <Print Preview> button which closes the print dialog and displays the NCReport preview window with the report. When I press the <Print Preview> button, I simply get nothing, the print dialog goes away as expected, but nothing else. No error, no anything.
I dug a bit deeper, thinking the issue might be a path issue so I added an About box that shows the Qt Library Paths. The system is pointing to the directly that the program and all the Qt DLL's are in (C:\Program Files\Miltonstreet Software\Photo Parata) and to the plugins (C:\Program Files\Miltonstreet Software\Photo Parata\plugins). The plugins folder also has the imageformats directly which contains all 6 default dll's and the sqldrivers folder that contains qsqlite4.dll.
Any thoughts on what I am missing? I am totally lost at this point.
Sam
-
Does the application quit, or just keeps running without showing anything?
-
It's required to put the plugins into subfolders of Photo Parata\plugins. Putting all DLLs into "plugins" is not sufficient.
-
It just keeps running, it never chrashes.
Volker, I am aware the image dll's need to be in the imageformats directory and the sql dll's sqldrivers folder.
-
Thinking it might be some other plugin that was missing, I copied over ALL the plugins, but release and debug. No luck. Then I copied over all the DLL's from %QTDIR%\bin directory, still no luck. Like I said before, it does not crash, it simply does not report an errors.
-
Are there any errors in the Windows Event Log?
If there are problems in locating shared libraries they have to be logged somewhere, haven't they? -
You can add a log browser window like one in "this wiki article":http://developer.qt.nokia.com/wiki/Browser_for_QDebug_output to your application and catch the qDebug() output there. This should give you some information about where and why something went wrong.
-
Volker, That did it, I had a check for a condition I didn't think would fail and I only had a qDebug in the else statement:)
-
Glad to hear it helped. That qDebug output saved me for a good couple of times too :-)
-
Yea, I have always used it with Visual Studio as the logger, I never knew I was about to output to another window, thAt us sweet!