Use local dll instead of system32's dll
-
wrote on 23 Jun 2012, 16:25 last edited by
Hi, Lukas, thank you again, this is totally crazy to me, man. I already installed Microsoft Visual C++ 2010 Redistributable Package (x86) and and launches the same error saying that _except_hanlder4_common is not in msvcrt.dll , nohting I have encountered in INternet about this error works :S nothing...
do you think that building my .exe statically would avoid this problem??
Either way, I'm really tired of trying to compile Qt statically and is a really pain in the ass, I don't get what's missing, I have followed enough tutorials about it and I can't get it working right compilation ends with errors
I have downloaed the source from version 4.7.4 from qt webpage, put it in a different folder and just doesn't compile -
wrote on 24 Jun 2012, 11:01 last edited by
Did you try to search for "_except_handler4_common" (you have a typo in your string!)? It brings back a big bunch result pages with the very same error you are facing.
This "blog article":http://qamarsyed.blogspot.de/2010/08/procedure-entry-point.html looks promising.
-
wrote on 24 Jun 2012, 19:22 last edited by
The next question is, why does your application depend on msvcrt.dll. The default linkage should link to a library from the redistributable package, not the system library. Did you tinker with the linker flags?
-
wrote on 25 Jun 2012, 13:09 last edited by
Thank you again , both
Volker: I'm sorry, what do you mean with " you have a typo in your string!" And, man, this is frustrating I have days trying everything I find in Google, the one you sent me was the first thing a tried and nothing, believe me, I have tried everthingLukas: Actually yeah, I tinkered with some flags of the qmake.conf file trying to make an static linking, wish never worked because building qt statically is such a pain in the ass. then I reinstalled everthing and compiled my project again, and the errors about missing functions in the msvcrt.dll are still appearing
I made up with a "solution" (believe me, I hate it but it makes my program run on windows 7 and windows xp) Compiling on windows XP makes everything works on both platform. Yeah, hit me in the face if you want to, but I have days reading and trying to make work and just this worked. Something weird about this, after compiling on windows xp, some SSL Handshaked Failed error pops up when I send the get request, something that never came up compiling on windows 7, anyways, I solved this using qnetworkreply->ignoreSSLerrors() and well, my app seems to be working ok so far on both platforms.Whatever you can come up, any idea, it will be very welcome
-
wrote on 25 Jun 2012, 13:11 last edited by
Lukas: I almost forgot, the dependenc on msvcrt.dll ,I found out on Internet , does'nt come from my app but from the compiler mingw g++ , it uses it some stuff of microsoft c++ runtime libraries
-
wrote on 25 Jun 2012, 14:55 last edited by
Did you redistribute your application with appropriate MinGW runtime files (depends on your MinGW version, most probably mingwm10.dll, libgcc_s_dw2-1.dll or libstdc++-6.dll, libgcc_s_sjlj-1.dll)?
I'm not quite sure what could cause this, cause honestly I've never seen this error before.
-
wrote on 25 Jun 2012, 15:05 last edited by
Yes, I put all of them in the same .exe directory
Now, one question, have you made something , like in my case, compiled in windows 7 and then using it in windows xp? -
wrote on 25 Jun 2012, 20:00 last edited by
Yes, I do compile on Windows 7 SP1 Build 7601 x64 using i686-w64-mingw32-gcc-4.7.0-release-win32_rubenvb. The binaries run as expected on Windows XP Professional SP3 Build 2600.
Make sure you've installed Service Pack 2 for Qt 4 and Service Pack 3 for Qt 5 on Windows XP!
-
wrote on 27 Jun 2012, 17:38 last edited by
There's got be something out of the ordinary with my app, then, my app interacts with Google Calendar Api, besides, uses QAxcontainer to embeed Microsoft Word Ole component, So maybe on of those things make it acts weird, I don't know :S
-
wrote on 27 Jul 2012, 15:51 last edited by
Hi Guys, I exactly have the same problem leninbooter has. (I was almost giving up, since I thought I was the only one with the same problem...)
First of all, some information about my build-system configuration:
Windows 7 (32 bit) on a core2duo p8700 system
QT 4.8.1
mingw 4.4.0The target is a Windows XP Version 2002 with SP3 (32 bit) system
In the program I wrote, I am using TCP sockets to communicate with some measurement devices. I first had some problems with getting procedure entry point errors concerning the microsoft socket API, but these errors could be removed by deploying the necessary Win7 DLLs in the application directory.
After this, I encountered the same problem leninbooter has.
I tried to solve the error on the same manner as mentioned above, but this does not have any effect.I don't know if I even run into other severe problems just in case we get this error solved...
-
wrote on 30 Jul 2012, 09:38 last edited by
In the meantime I tried to find a solution for the problem again, because this one really upsets me...
I just want to keep you informed, just in case someone also tries to solve it.I tried several configurations and also tried to build my application on windows xp. I found out that a DLL ("WS2_32.DLL") which I use, caused the problems in my case. If I use the Windows XP Version of this DLL, everything works just fine (for Windows XP as well as Windows 7, no matter with which operating system I build my application) in my case.
@Leninbooter: Perhaps you try it this way: Whatever "operating system dependant" DLL you use, try to take the respective DLL which belongs to the operating system you use (especially DLLs which are normally situated in "c:\windows\system32"). In my case, the "WS2_32.DLL" from Windows XP seems to be compatible with Windows 7, but I think that cannot be said in general for other DLLs. I would be very interested, if you can make any progress in this way.
-
wrote on 16 Dec 2013, 08:44 last edited by
Have you tried to copy all the DLLs in your executable folder and executing it? Maybe there is some missing DLLs that generates your problem.
I posted this "inverse" method that worked for me "here":http://stackoverflow.com/questions/17023419/win-7-64-bit-dll-problems/20606198#20606198