Hello,

I had a look at the manifest problem again. It was not a good idea to 
say /Manifest:No, as Hakan had to discover. I found some old comments 
confirming this, e.g.

http://codeandcoffee.de/index.php?/archives/1-wxWidgets-Visual-Studio-.net-2003-porting-to-VS-2005.html


What I found appears two be two issues in the wxArt2D samples (I mainly 
used sample editor simple for investigation) and one on wxArt2D include 
paths.

1. The samples include wx.rc directly. You can see in the .vcproj file. 
The also available .rc file (single.rc for me) there fore is not used at 
all.

2. The .rc files are outdated copies of wx.rc. Instead a proper .rc file 
should look like

mondrian ICON "mondrian.ico"
#define wxUSE_NO_MANIFEST 1
#include <wx/msw/wx.rc>

And now the example works (ok I tested static only again)! By loading 
wx.rc via single.rc, you get the opportunity to add #define 
wxUSE_NO_MANIFEST 1 before wx.rc gets called. Thus avoiding getting two 
manifests. The right one is the autogenerated one from Visual Studio 
made for your app. The one in wx.rc gets properly ignored.

You can verify the difference by the app's icon. Before I had a default 
one (looks like a window with white background), now it is the mondrian 
it is supposed to be.

3. However, I wondered why in wx.rc the line
#if !defined(WX_MSC_FULL_VER) || WX_MSC_FULL_VER < 140040130
evaluates to true ..., meaning lib\vc_lib\mswd\wx\msw\rcdef.h is not 
included, include\wx\msw\rcdefs.h is wrong one.

Looking at how a wxWidgets demo gets compiled:
cl /c /nologo /TP /Fovc_mswd\forty_game.obj /MTd /DWIN32  /Zi /Fdvc_mswd
\forty.pdb /D_DEBUG  /Od  /D__WXMSW__   /D__WXDEBUG__ 
/I.\..\..\lib\vc_lib\mswd /I.\..\..\include /W4 /I.   /D_WINDOWS 
/I.\..\..\samples /DNOPCH /GR /EHsc    .\game.cpp

Aha, lib\vc_lib\mswd gets included first. Experiment:
I removed include\wx\msw\rcdefs.h, compiled some wxart2d sample again 
(without #define wxUSE_NO_MANIFEST 1), and it works, now the right one 
gets included.


Conclusion:
1. Somewhere deep inside wxArt2D makefile generation the order of 
include paths needs to be twisted.
2. The .rc-files of the samples are broken.

Viele Grüße,
Michael Stratmann









-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Wxart2d-users_dev mailing list
Wxart2d-users_dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wxart2d-users_dev

Reply via email to