PDA

View Full Version : QSslSocke::supportSsl() returns false



oscar
8th September 2008, 23:37
Hi,

I've spent many time trying to make function SSL support working with QT 4.4.1 opensource edition without success.

The function: QSslSocket::supportSsl() still returns false...

Here is the minimalist tutorial I followed; I hope you'll notice something wrong:


* download latest release of Qt:
qt-win-opensource-x.x.x-mingw.exe

* if you're on Vista, check that the line:

set PATH=%PATH%;C:\MinGW\libexec\gcc\mingw32\3.4.2

is in the file C:\Qt\4.3.3\bin\qtvars.bat

* download and install SSL libraries. Pre compiled are available here:
http://www.openssl.org/related/binaries.html
Install the dlls into OpenSSL folder
(don't take the "Light" release but the standard instead like:
Win32 OpenSSL v0.9.8h
Then copy the files ssleay32.dll and libeay32.dll into your executable folder

* recompile Qt with OpenSSL support:
configure.exe -openssl -I C:\OpenSSL\include -L C:\OpenSSL\lib\MinGW
make


The compilation went good. I noticed the line
OpenSSl support ......... Yes
when doing configure

But when my program calls: QSslSocke::supportSsl()
the method returns false! Grrr...

Running my program under dependency walker to investiguate showed 2 errors:


Loaded "SSLEAY32.DLL" at address 0x012F0000. Successfully hooked module.
Unloaded "SSLEAY32.DLL" at address 0x012F0000.
LoadLibraryW("ssleay32") returned NULL. Error: The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log for more detail (14001).
Error: The Side-by-Side configuration information for "c:\qt\4.4.1\examples\network\securesocketclient\re lease\SSLEAY32.DLL" contains errors. The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log for more detail (14001).
Error: The Side-by-Side configuration information for "c:\qt\4.4.1\examples\network\securesocketclient\re lease\LIBEAY32.DLL" contains errors. The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log for more detail (14001).
GetProcAddress(0x77A80000 [GDI32.DLL], "GetLayout") called from "USP10.DLL" at address 0x77845B74 and returned 0x77A87F10.
GetProcAddress(0x77A80000 [GDI32.DLL], "GdiRealizationInfo") called from "USP10.DLL" at address 0x77845C21 and returned 0x77A88078.
GetProcAddress(0x77A80000 [GDI32.DLL], "FontIsLinked") called from "USP10.DLL" at address 0x77845B39 and returned 0x77A8C8B9.
GetProcAddress(0x77A80000 [GDI32.DLL], "GetTextFaceAliasW") called from "USP10.DLL" at address 0x778453E2 and returned 0x77A8C7F5.
GetProcAddress(0x77A80000 [GDI32.DLL], "GetFontAssocStatus") called from "USP10.DLL" at address 0x77845BA9 and returned 0x77A8C8CD.
GetProcAddress(0x77A80000 [GDI32.DLL], "GetTextFaceAliasW") called from "USP10.DLL" at address 0x77845776 and returned 0x77A8C7F5.
GetProcAddress(0x77A80000 [GDI32.DLL], "GdiIsMetaPrintDC") called from "USP10.DLL" at address 0x778415FB and returned 0x77A897E1.
LoadLibraryW("wintab32") called from "QTCORE4.DLL" at address 0x1015A83D.
LoadLibraryW("wintab32") returned NULL. Error: The specified module could not be found (126).
LoadLibraryW("wintab32.dll") called from "QTCORE4.DLL" at address 0x1015B102.
LoadLibraryW("wintab32.dll") returned NULL. Error: The specified module could not be found (126).
LoadLibraryW("user32") called from "QTCORE4.DLL" at address 0x1015A83D.
LoadLibraryW("user32") returned 0x76680000.


I don't think the second one is really important neither if the first one may be the reason why QSslSocket::supportSsl returns false.

Thanks for your help.
Best regards,
Oscar

oscar
9th September 2008, 18:51
No one has an idea?

Regards,
Oscar