My wxWidgets application doesn't run in other computers,why?

If you are using the main C++ distribution of wxWidgets, Feel free to ask any question related to wxWidgets development here. This means questions regarding to C++ and wxWidgets, not compile problems.
Post Reply
idhan
Experienced Solver
Experienced Solver
Posts: 88
Joined: Tue Feb 28, 2006 9:03 pm

My wxWidgets application doesn't run in other computers,why?

Post by idhan » Sun Mar 19, 2006 7:44 pm

Hi..

I have created successful an wxWidgets application using Microsoft Visual Studio 2005 but when trying to run my .exe in another computer appears the message:

"The applicaci
Last edited by idhan on Sun Mar 19, 2006 7:47 pm, edited 1 time in total.

phlox81
wxWorld Domination!
wxWorld Domination!
Posts: 1387
Joined: Thu Aug 18, 2005 7:49 pm
Location: Germany
Contact:

Post by phlox81 » Sun Mar 19, 2006 7:47 pm

Have you compiled in Debug Mode ?
Cause then your application is only gonna run on machines with debugger installed.
Compile in Release Mode to prevent this.

idhan
Experienced Solver
Experienced Solver
Posts: 88
Joined: Tue Feb 28, 2006 9:03 pm

Post by idhan » Sun Mar 19, 2006 7:48 pm

I compiled in release mode :-(, by the way, Ich bin in Karlsruhe und du?

eco
Filthy Rich wx Solver
Filthy Rich wx Solver
Posts: 203
Joined: Tue Aug 31, 2004 7:06 pm
Location: Behind a can of Mountain Dew
Contact:

Re: My wxWidgets application doesn't run in other computers,

Post by eco » Sun Mar 19, 2006 8:16 pm

idhan wrote:Exists any application that indicates the DLL or files necessary to run the application in other machines? How can I make sure that my wxWidgets application can run in any windows xp machine?
Dependency Walker works like a charm.

idhan
Experienced Solver
Experienced Solver
Posts: 88
Joined: Tue Feb 28, 2006 9:03 pm

Post by idhan » Sun Mar 19, 2006 8:39 pm

Thanks Eco..

The list of DLL according to program "Dependency Walker" is very long, much much more than what VC++ shows that I realy need. Helps the program to group the files automaticamente or it is only show me what I need? I tries it without success.

Here is the list... :P

MPR.DLL ADVAPI32.DLL COMCTL32.DLL COMDLG32.DLL DCIMAN32.DLL DDRAW.DLL GDI32.DLL GLU32.DLL GLUT32.DLL KERNEL32.DLL MSVCR80.DLL MSVCRT.DLL NTDLL.DLL OLE32.DLL OPENGL32.DLL RPCRT4.DLL SHELL32.DLL SHLWAPI.DLL USER32.DLL ACTIVEDS.DLL ADSLDPC.DLL ADVPACK.DLL APPHELP.DLL ATL.DLL AUTHZ.DLL BROWSEUI.DLL CABINET.DLL CDFVIEW.DLL CERTCLI.DLL CFGMGR32.DLL CLUSAPI.DLL CREDUI.DLL CRYPT32.DLL CRYPTUI.DLL CSCDLL.DLL DBGHELP.DLL DEVMGR.DLL DHCPCSVC.DLL DNSAPI.DLL DUSER.DLL EFSADU.DLL ESENT.DLL GDIPLUS.DLL HLINK.DLL HNETCFG.DLL IMAGEHLP.DLL IMGUTIL.DLL IMM32.DLL INETCOMM.DLL IPHLPAPI.DLL LINKINFO.DLL LZ32.DLL MFC42U.DLL MLANG.DLL MOBSYNC.DLL MPRAPI.DLL MPRUI.DLL MSASN1.DLL MSGINA.DLL MSHTML.DLL MSI.DLL MSIMG32.DLL MSJAVA.DLL MSLS31.DLL MSOERT2.DLL MSRATING.DLL MSSIGN32.DLL MSVCP60.DLL MSWSOCK.DLL NETAPI32.DLL NETCFGX.DLL NETMAN.DLL NETPLWIZ.DLL NETRAP.DLL NETSHELL.DLL NETUI0.DLL NETUI1.DLL NETUI2.DLL NTDSAPI.DLL NTLANMAN.DLL ODBC32.DLL OLEACC.DLL OLEAUT32.DLL OLEDLG.DLL OLEPRO32.DLL POWRPROF.DLL PRINTUI.DLL PSAPI.DLL QUERY.DLL RASAPI32.DLL RASDLG.DLL RASMAN.DLL REGAPI.DLL RTUTILS.DLL SAMLIB.DLL SCECLI.DLL SECUR32.DLL SETUPAPI.DLL SHDOCVW.DLL SHSVCS.DLL TAPI32.DLL URLMON.DLL USERENV.DLL USP10.DLL UTILDLL.DLL UXTHEME.DLL VERSION.DLL W32TOPL.DLL WINHTTP.DLL WININET.DLL WINMM.DLL WINSCARD.DLL WINSPOOL.DRV WINSTA.DLL WINTRUST.DLL WLDAP32.DLL WMI.DLL WS2_32.DLL WS2HELP.DLL WSOCK32.DLL WTSAPI32.DLL WZCDLG.DLL WZCSAPI.DLL WZCSVC.DLL

emarti
Filthy Rich wx Solver
Filthy Rich wx Solver
Posts: 210
Joined: Sat May 07, 2005 8:24 pm
Location: Eskisehir, TURKEY
Contact:

Re: My wxWidgets application doesn't run in other computers,

Post by emarti » Mon Apr 03, 2006 9:20 pm

[quote="idhan"]Hi..

I have created successful an wxWidgets application using Microsoft Visual Studio 2005 but when trying to run my .exe in another computer appears the message:

"The applicaci
- T U R K E Y ?
- I love this country!

WebSites:
http://mebt.sourceforge.net/
http://wxquran.sourceforge.net/

User avatar
Ryan Norton
Moderator
Moderator
Posts: 1319
Joined: Mon Aug 30, 2004 6:01 pm

Post by Ryan Norton » Tue Apr 04, 2006 2:58 am

Probably a problem with the manifest - see
http://forums.wxwidgets.org/viewtopic.p ... t=manifest

or search the forums for "manifest"
[Mostly retired moderator, still check in to clean up some stuff]

Edwin
In need of some credit
In need of some credit
Posts: 6
Joined: Fri Jan 21, 2005 9:49 am
Location: The Netherlands

Post by Edwin » Tue Apr 04, 2006 6:15 am

I had the same problems, but with the great walkthrough at http://forums.wxwidgets.org/viewtopic.php?t=6357 all my troubles disappeared :-)
This way you don't have the msvc*.dll dependencies either, because you link them statically in your application.
It involves adjusting the compiler settings from 'multithreaded-dll' to 'mutithreaded'. Once all libraries and your project are compiled this way, you should have an application which runs on any windows machine.
If you get 'undefined symbols' while linking, one of your libraries is still build with 'multithreaded-dll', and you have to change and rebuild that one!

goodluck,
Edwin

Lupus
Earned a small fee
Earned a small fee
Posts: 22
Joined: Wed Nov 17, 2004 7:49 pm
Location: Hamburg, Germany

Post by Lupus » Tue Apr 04, 2006 1:41 pm

errare humanum est

wxWidgets 2.6.2
Visual Studio 2005

cpp
I live to help wx-kind
I live to help wx-kind
Posts: 195
Joined: Wed Sep 28, 2005 9:42 pm

Post by cpp » Wed Apr 05, 2006 12:38 am

Edwin is 100% right. I bet my right arm that the problem is the anoying vcrt dependency.
Just recompile / link all your wxWidgets code (including the library itself) to use static linking to the C++ runtime, and your problems will go away :D

PS: To the wxWidgets dev team:
This kind of trouble seems to repeat itself over and over again, it could be easily solved by modifiyng the vc project that comes with the wxWidgets distro (wx.dsw) to link statically to the vcrt. And since there is no reason whatsoever , why dynamic linking (to the crt) would be better,
Why not set wxWidgets to link statically to the CRT by default?
Hier Kommt die Sonne...

Ksmith22
I live to help wx-kind
I live to help wx-kind
Posts: 199
Joined: Mon Nov 21, 2005 4:34 pm

Post by Ksmith22 » Wed Apr 05, 2006 3:40 pm

cpp wrote:Edwin is 100% right. I bet my right arm that the problem is the anoying vcrt dependency.
Just recompile / link all your wxWidgets code (including the library itself) to use static linking to the C++ runtime, and your problems will go away :D

PS: To the wxWidgets dev team:
This kind of trouble seems to repeat itself over and over again, it could be easily solved by modifiyng the vc project that comes with the wxWidgets distro (wx.dsw) to link statically to the vcrt. And since there is no reason whatsoever , why dynamic linking (to the crt) would be better,
Why not set wxWidgets to link statically to the CRT by default?
Well it makes the app a bit smaller if you link dynamically I think, but yes, I agree. It's kind of an annoying little thing I have to do everytime I need to build wxWidgets (i.e. like for 2.6.3). Especially since I have to go to each library, setup this for Debug and Release (as those are the only two I use - but it could potentially be more), which is something like 20 menus by the time I'm finished.

cpp
I live to help wx-kind
I live to help wx-kind
Posts: 195
Joined: Wed Sep 28, 2005 9:42 pm

Post by cpp » Wed Apr 05, 2006 7:35 pm

Well it makes the app a bit smaller if you link dynamically I think
When i finished my first application that used wxWidgets, i had exacly the same problem as the topic starter (idhan), i even posted it here:
http://forums.wxwidgets.org/viewtopic.php?t=5339
and i was affraid that my allready >2MB app would become >3or4MB if i linked statically, but i tried it, and was very pleased to see that my app was only 10Kb bigger! :D
And really, if the price for avoiding all the trouble this vcrt redistribution causes is an extra 10kb in my app, im glad to pay it!.
I wonder how many people use static linking to vcrt. maybe we should start a poll
Hier Kommt die Sonne...

Ksmith22
I live to help wx-kind
I live to help wx-kind
Posts: 199
Joined: Mon Nov 21, 2005 4:34 pm

Post by Ksmith22 » Wed Apr 05, 2006 7:39 pm

cpp wrote:
Well it makes the app a bit smaller if you link dynamically I think
When i finished my first application that used wxWidgets, i had exacly the same problem as the topic starter (idhan), i even posted it here:
http://forums.wxwidgets.org/viewtopic.php?t=5339
and i was affraid that my allready >2MB app would become >3or4MB if i linked statically, but i tried it, and was very pleased to see that my app was only 10Kb bigger! :D
And really, if the price for avoiding all the trouble this vcrt redistribution causes is an extra 10kb in my app, im glad to pay it!.
I wonder how many people use static linking to vcrt. maybe we should start a poll
Yeah, the difference really is negligable. And it's not like the wxWidgets developers have exactly gone out of their way to make wxWidgets as lightweight as something like, say, FLTK anyways. So generally speaking if that much of an increase bothered you so much, you probably wouldn't be using wxWidgets in the first place. And even then, yeah, you can change it to dynamic :)

cpp
I live to help wx-kind
I live to help wx-kind
Posts: 195
Joined: Wed Sep 28, 2005 9:42 pm

Post by cpp » Thu Apr 06, 2006 12:27 am

Amen to that Ksmith! :D

BTW: One thing caught my attention on one of your previous replies, you said:
I have to go to each library, setup this for Debug and Release (as those are the only two I use - but it could potentially be more), which is something like 20 menus by the time I'm finished.
you mean that when changing the settings, you do it one project at a time in the wx.dsw solution? like you select base, change the settings, then select core, change the settings, etc?
If so, here
Hier Kommt die Sonne...

M-.-n
Knows some wx things
Knows some wx things
Posts: 27
Joined: Wed Jan 25, 2006 5:07 pm

Another thing to watch out

Post by M-.-n » Tue Jun 20, 2006 10:07 am

To prevent .net install on target machines:

http://forums.wxwidgets.org/viewtopic.php?p=39927#39927

Post Reply