none
How to compile Win CE source code after editing bitmap images in PUBLIC directory? RRS feed

  • Question

  • Hi,

    I have replaced a bitmap image in "WINCE600\PUBLIC\SHELL\OAK\HPC\EXPLORER\MAIN\RES"

    folder with my own image and run "Build and Sysgen" . But the changes were not reflected. If i have modified anything in .cpp file, it's reflected. But the changes made in "RES" folder were not reflected after doing "build and sysgen" . How can i resolve this?


    Regards, Eshwar

    Tuesday, May 8, 2012 10:33 AM

All replies

  • Never run 'build and sysgen',  this is probably the most heard advice you can find in the Windows CE forum (see for example Bruce Eitman's blog http://geekswithblogs.net/BruceEitman/archive/2008/06/19/platform-builder-dont-use-build-and-sysgen.aspx).

    Another thing that you are recommended not to do is modifying public code: first you need to clone the explorer shell then perform whatever modification you want and rebuild. See for example http://geekswithblogs.net/BruceEitman/archive/2008/07/02/platform-builder-clone-public-code.aspx and


    Luca Calligaris lucaDOTcalligarisATeurotechDOTcom www.eurotech.com Check my blog: http://lcalligaris.wordpress.com

    Tuesday, May 8, 2012 11:34 AM
  • Thanks for your answer. But how can i include my bitmap image in RES folder?

    Regards, Eshwar

    Tuesday, May 8, 2012 12:02 PM
  • Clone the code to your platform or osdesign

    Bruce Eitman (eMVP)
    Senior Engineer
    Bruce.Eitman AT Eurotech DOT com
    My BLOG http://geekswithblogs.net/bruceeitman

    Eurotech Inc.
    www.Eurotech.com

    Tuesday, May 8, 2012 12:11 PM
    Moderator
  • Maybe you're asking how do you manage to have your bmp file included in the .res file which is 'linked' to explorer.exe?

    If you use 'sysgen_capture -p shell explorer'you get a sources file like

    TARGETNAME=explorer
    TARGETTYPE=PROGRAM
    RELEASETYPE=PLATFORM
    SYNCHRONIZE_DRAIN=1
    EXEENTRY=WinMainCRTStartup
    SOURCELIBS=
    TARGETLIBS=\
        $(_SYSGENSDKROOT)\lib\$(_CPUINDPATH)\coredll.lib \
        $(_PUBLICROOT)\shell\oak\lib\$(_CPUINDPATH)\explorer.lib \
        $(_PUBLICROOT)\shell\oak\lib\$(_CPUINDPATH)\explorer.res \
        $(_PUBLICROOT)\shell\oak\lib\$(_CPUINDPATH)\explorer_ie.lib \
        $(_SYSGENSDKROOT)\lib\$(_CPUINDPATH)\uuid.lib \
        $(_SYSGENSDKROOT)\lib\$(_CPUINDPATH)\ole32.lib \
        $(_SYSGENSDKROOT)\lib\$(_CPUINDPATH)\oleaut32.lib \
        $(_SYSGENSDKROOT)\lib\$(_CPUINDPATH)\commctrl.lib \
        $(_SYSGENSDKROOT)\lib\$(_CPUINDPATH)\ceshell.lib \
        $(_SYSGENOAKROOT)\lib\$(_CPUINDPATH)\shcore.lib \
        $(_PUBLICROOT)\shell\oak\lib\$(_CPUINDPATH)\aygutils.lib \
        $(_PUBLICROOT)\shell\oak\lib\$(_CPUINDPATH)\favorites.lib \
        $(_PUBLICROOT)\shell\oak\lib\$(_CPUINDPATH)\taskbar.lib \
        $(_SYSGENOAKROOT)\lib\$(_CPUINDPATH)\ieceext.lib \
        $(_PUBLICROOT)\shell\oak\lib\$(_CPUINDPATH)\shellaygfuncs.lib \
        $(_PUBLICROOT)\shell\oak\lib\$(_CPUINDPATH)\shellpslayg.lib
    SOURCES=

    Let's say that you will put this file in $(_TARGETPLATROOT)\SRC\APP\EXPLORER

    1) Copy in the above directory the content of %_WINCEROOT%\PUBLIC\SHELL\OAK\HPC\EXPLORER\MAIN\RES and the

    %_WINCEROOT%\PUBLIC\SHELL\OAK\HPC\EXPLORER\MAIN\explorerbase.rc file.

    2) Run RC tool on explorerbase.rc to obtain the new explorerbase.res file which includes the new bitmap.

    3) Rebuild explorer.res file running

    res2res %_WINCEROOT%\public\shell\oak\lib\ARMV4I\retail\explorer_qvgap.res <path to the just compiled .res file>\explorerbase.res -fo <path where you want the new explorer.res file>\explorer.res

    4) Change in the sources file the line $(_PUBLICROOT)\shell\oak\lib\$(_CPUINDPATH)\explorer.res  to the path where you created the new explorer.res file and rebuild your custom explorer.exe


    Luca Calligaris lucaDOTcalligarisATeurotechDOTcom www.eurotech.com Check my blog: http://lcalligaris.wordpress.com

    Tuesday, May 8, 2012 12:25 PM
  • What's RC Tool?

    Regards, Eshwar

    Wednesday, May 9, 2012 10:48 AM
  • RC is the resource compiler tool which accept in input a resource source file (.rc) which defines -for example- the layout of a dialog box and compile it to a binary resource file (.res). If you open a command window from Platform Builder and run 'rc -?' you can see the command line syntax (or you can see the online help http://msdn.microsoft.com/en-us/library/windows/desktop/aa381042(v=vs.85).aspx).

    Notice that if you place a .rc file in the SOURCES= directive the build tool will automatically call the rc tool.


    Luca Calligaris lucaDOTcalligarisATeurotechDOTcom www.eurotech.com Check my blog: http://lcalligaris.wordpress.com

    Wednesday, May 9, 2012 11:45 AM
  • Thanks a lot...

    Regards, Eshwar

    Wednesday, May 9, 2012 12:53 PM