• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 366
  • Last Modified:

Imagelist Corruption

Hiya, I have a problem that is driving me *wild* (grr... ;O) )

  We have an application that has many imagelists, with around 50 images per list (4 of them on different forms within the application)...

  Both me and one of my colleagues have a problem that occasionally these imagelists corrupt (looks like the same mask is used with a different image inside it)...

  We have tried:

  1) Downloading the latest drivers
  2) adding BusThrottle=1 to the [display] section of the SYSTEM.INI file
  3) Reducing the hardware acceleration
  4) Getting the latest DirectX drivers

  I have a PII 350 with an ATI Rage Pro AGP graphics card, and my colleague has a Twin celeron 350 with an S3 PCI graphics card.

  We both have Windows 98, and are both using Delphi 5 (service pack 1)

  Any ideas?

  Tim.
0
AttarSoftware
Asked:
AttarSoftware
  • 6
  • 5
  • 2
  • +1
1 Solution
 
kretzschmarCommented:
? no, you've just done what i could suggest
0
 
PetriWorkCommented:
Think of that images in a ImageList are stored on one big surface. Also don't mix image sizes at all...
I guess you already know this but it should be said...
0
 
AttarSoftwareAuthor Commented:
Yeah, all my images ar 16x16 in 256 color...

The biggest imagelist (which corrupts the most) contains around 75 images...

Tim.
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
PetriWorkCommented:
Ok, that shouldn't be a problem then, check if changing the desktop colordepth helps.
I've used imagelists with thousands of 32*32*16 images so as you don't use "large" images you should have no problem....
Can you further describe the error symptoms?
0
 
PetriWorkCommented:
From the Delphi help:
Note:      Image lists depend on Comctl32.dll. If the system does not have the latest version installed, there may be problems getting images to appear.
0
 
PetriWorkCommented:
Also, did you have the problem before installing Update Pack 1?
0
 
AttarSoftwareAuthor Commented:
Yeah, we have always had the problem...
I will check for a later version of Commctl32.dll, that is a good idea...

As for the symptoms, imaging that all of your images retain their shape, but the conttent gets shuffled.

Imagine the error occurs with imagelists with only two images (which it doesn't seem to do, but it will make it easier to explain)...

  1) A green square
  2) A red triangle

When the corruption occurs, you end up with a green square that is clipped to the shape of the triangle, and a red triangle that has been clipped to the size and shape of the square...  

It is really odd...  and as you can understand, the problem is much worse with 75 256 color shaded images! :O)

Tim.
0
 
kretzschmarCommented:
? this problem i had sometimes with delphi, if the resources are very low at my workstation
0
 
AttarSoftwareAuthor Commented:
Maybe going to Win98 release 2 would help?
0
 
SteveWaiteCommented:
I'm not sure if this little snippet helps but maybe rings a bell with someone somewhere...

I found D4/MS image lists implementation a pain with compatibility issues arising from Win95/IE4 versions. I've seen mangled images and none at all in menus on certain PC's. I'm afraid I'm too dull to remember exactly but I think the worst problems were found on early Win95 with IE4 updates. You may be right in going for later OS's. Beats ditching image lists?.

Steve
0
 
PetriWorkCommented:
I've used an ImageList containing 4-20 images (handled dynamically) on several types of configuartions with no problems. Low resources is a possible problem but if you get to that point it's something else that is the problem. ImageList is used to conserve resources.
AttarSoftware, try checking the Microsoft Knowledgebase and Borland Community pages. They'd probably give a lot when it comes to bugs in TImageList. I wen't the whole race about half a year ago but now my ImageLists even work with S3 cards (whoo). These two places really helped me out.
Btw. Dynamic ImageLists are much more prone to errors than static ones. Are your Imagelist's content generated at run-time or are the images in the ImageLists already? If they're generated at runtime try doing all the stuff at design-time and see what happens.
0
 
AttarSoftwareAuthor Commented:
They are all static imagelists, poulated at design time...I check out the Microsoft Knowledgebase and Borland Community pages.  

I also upgraded to Win98 Second Edition this morning, so I will give it till tommorrow afternoon and if it hasnt corrupted again then I will assume that fixed it...

I hate intermittent bugs...

Be right back ;O)

Tim.
0
 
PetriWorkCommented:
Imagelist can be a real pain sometimes =]. Though that they are created at design time means you've got a little more control over them...
0
 
AttarSoftwareAuthor Commented:
Well, going to Win98 Second Edition seems to have killed the problem (well, at least I havent had it for 3 days now), so I will be a good little expert, and accept this answer ;O)

Thanks :)

Tim.
0

Featured Post

Vote for the Most Valuable Expert

It’s time to recognize experts that go above and beyond with helpful solutions and engagement on site. Choose from the top experts in the Hall of Fame or on the right rail of your favorite topic page. Look for the blue “Nominate” button on their profile to vote.

  • 6
  • 5
  • 2
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now