Thanks Joaquin,

I think the real problem I was seeing IS the image icon, not the systray icon.
I had thought about generating this on the fly but thought it wouldn't work.

I'll look into this approach.


Speaking of icons- a friend of mine is trying to figure out how to get several different icons associated with different windows, in the same app. I guess his main app spawns multiple screens- but he wants to associate a different icon with each screen.
He's using Pythoncard- but it's still wx under the covers.
          
>>for a frame icon (the small icon in the frame) I encode a smaller image using the base64 module and  I copy/paste de generated >>ICON string  into a  image.py file. Then, a run time  I regenerate it  in  the main frame (a wx.python  frame) with:

        def decode_ico(self):
            imgico = self.prepara(ICON)
            _icon = wx.IconFromBitmap(wx.BitmapFromImage(imgico))
            self.SetIcon(_icon)
      
      def prepara(self, data):
            img = base64.decodestring(data)
            flhndl = cStringIO.StringIO(img)
            return  wx.ImageFromStream(flhndl, wx.BITMAP_TYPE_ANY)


hope this helps
Joaquin


Date: Mon, 5 May 2008 20:30:18 -0700
From: cappy2112@gmail.com
To: py2exe-users@lists.sourceforge.net
Subject: [Py2exe-users] How to distribute embedded icons




Is there a way to include an icon file in the actual exe itself, so a separate file doesn't need to be distributed with the application?

My setup.py file looks like this, but when I try to run the exe from the dist directory, an error is displayed because the icon is not present.
When I copy the exe to the same directory as the ico, the problem is resolved.


trgt = Target(
                      description     = "My App",
                      # what to build
                      script          = "MyScript.py",
                      other_resources = [(RT_MANIFEST, 1, manifest_template % dict(prog="MyScript"))],
                      icon_resources = [(1, "MyScript.ico")],
                      dest_base       = "MyScript"
                    )


setup( options    = \
      
       { "py2exe": { "compressed"  : 2,

                     "optimize"    : 1,

                     "ascii"       : 1,
                    
                     "bundle_files": 0,

                     "excludes"    : ['wingdbstub'],

                     "includes"    : [],

                     "dll_excludes" : [],
                    
                     "packages"     : ['encodings'],
                  }

       },

        
         windows = [trgt], zipfile= None
   )



Sigue de cerca las últimas tendencias y lo que más rompe MSN Vídeo