Cita de: Alien-Z en 23 Agosto 2013, 09:29 AM
Es evidente, si dices que estás almacenando imágenes de gran tamaño y llegas a tener 16 777 216 es normal que no haya memoria suficiente. La solución a esto es trabajar conjunto con el disco duro, ve guardando las imágenes que no utilices y cárgalas cuando las necesites (por ejemplo llevando una list<> de sus identificadores y no almacenando la foto en sí); la memoria RAM es demasiado limitada para lo que intentas.
Saludos.
Eso es. Aunque la cantidad de datos almacenados en la lista esté lejos del límite de la lista, tienes que tener en cuenta que si estás trabajando con un sistema de 32 bits, la cantidad máxima de RAM de que dispone tu programa son 4GB (2^32 bytes), por lo tanto la cantidad máxima de imágenes que puedes almacenar, suponiendo que todas las imágenes ocupen la misma cantidad de bytes, estará cerca de 2^32/tamaño_en_bytes_imagen. A partir de ahí el programa reventará, así que, como ya te han dicho, tendrás que ir tirando de disco duro.
¡Saludos!