EOutOfResources W magazynie brak miejsca do wykonania...

0

Mam taki "mały" problem. Zrobiłem obiekt który generuje i wyświetla miniaturki obrazków. Wszystko by działało ale czasami wyskakuje komunikat: EOutOfResources W magazynie brak miejsca do wykonania tego polecenia. Nie jest to zależne od wielkości wczytywanego pliku, tzn jak jest duży to prędzej wywali ale przy kolejnym wywołaniu i identycznej liście plików już nie wywala. Stąd moje pytanie, jeśli program robi dokładnie to samo to jakim cudem raz brakuje a raz nie? Czy da się gdzies zwiększyć wielkość tego "magazynu"? Jest to kluczowa rzecz którą robie od miesiąca a teraz nie mogę się z tego wycofać:(
No chyba że ktos poleci gotowy obiekt pokazujący miniatury plików (JvImageViewer też się niestety wywala:( )
Bardzo proszę o pomoc.
Ps. Jeśli ktoś chce mi dac rade typu nie ładuj tyle do pamięci to z góry dziękuje;)
Ps2. Najlepsze że program potrafi dac taki komunikat gdy zajmje np. 18MB pamięci:(
Ps3. Forum przeszukałem, temat był poruszany ale jedyna rada do jakiej doszli to nie ładować tyle do pamięci...

0

napisz coś bliżej (z kodem włącznie) jak
a) jak generujesz miniaturki
b) jak je wyświetlasz
jeśli to niejes tajemnica to możesz też dać cały kod tego komponentu (bo to chyba komponent)
Jeśli masz pakiet JEDI już ściągnięty (a z tego co pamiętam to miałeś) to zainstaluj sobie paczkę JclDebugIdeDxx.dpk z katalogu jcl\examples\vcl\debugextension. Teraz w File\New\Other\Dialogs masz nowe dialogi (min. ExceptionDialog). Dodaj go do projektu, zaznacz Project\Insert JCL Debug data i jak następnym razem gdzieś Ci się program wywali to dostaniesz nr. linijki, polecenie i konkretny opis co się wysypało.

0

Dzięki wielkie. Niestey przeczytałem już w plikach pomocy ze strony borlanda że jest to kwestia zbyt wielu obiektów na formatce i w zasadzie opróczy stosowania obiektów ktre nie używają uchwytu lub ograniczenia samej ilości obiektów nie ma na to rady:( BUUUU.
Może wiecie jak można umieszczać obiekty na canvie bez zajmowania uchwytów? Wiem że sa już takie programy i jakos to robią bez problemów...

Kod jest już dosyć długaśny niestety i pewnie nikomu nie będzie się chciało czytać. Żeby tak streścić to przeglądasz katalogi i po zmianie katalogu na inny zmieniana jest lista plików w okienku (scroll) z miniaturami oraz ścieżka pliku dodawana jest do tablicy magazyn. Ale żeby się taka lista nie odświeżała przez godzinę (generowanie miniatur może trwać czasem długo) to robi tylko takie obiekty (panel, na nim checkbox, obrazek [chwilowo pusty] i napis). W międzyczasie działa w tle wątek który gdy stwierdzi że coś nowego jest w tablicy magazyn to zaraz generuje miniaturkę i zapisuje w tablicy magazyn. Dzięki czemu jak scroll bedzie się chciał od czasu do czasu odświerzyć to może zajrzeć do magazynu czy juz nie czekają dla niego gotowe miniaturki. Założenia dobre ale rzeczywistość je u...pupiła:(

Dzięki wielkie i pozdrawiam.

1 użytkowników online, w tym zalogowanych: 0, gości: 1