Jak w temacie - pewnie banalne ale proszę o podpowiedź
O jaki plik binarny Ci chodzi? O execka? Poczytaj o zasobach (resources).
Nie chodzi mi o dołączanie bitmapy do zasobów tylko o dopisanie do pliku w którym zapisuję różne dane
No to w takim razie trzeba pliki amorficzne czyli: BlockRead, BlockWrite ;) i zapisujesz kolejne bajty oznaczające kolory pikseli - chyba tak ... :P
Napisałeś - chyba tak. Mnie to chyba również męczy. Ale skoro nikt nic innego nie napisał, to chyba tak trzeba zrobić
Eee a od czego jest TBitmap.SaveToFile/SaveToStream?
I czy ktos mi wytlumaczy czym jest plik binarny? Kazdy plik to po prostu zlepek bajtow :P
Plik już istnieje i jest już w nim coś zapisane(niekoniecznie bitmapa) - i chcesz dopisać SaveToFile?
...
Zapisujesz do streama i dopisujesz go do pliku.
Ja bym zrobil w nastepujacy sposob:
Na poczatku pliku stworzyl sformalizowany naglowek zawierajacy informacje o plikach zapisanych w tym pliku binarnym
na przyklad:
bitmapa.bmp rozmiar offsetSTart offsetEnd
Naglowek okreslil na powiedzmy 100 miejsc tak aby mial zawsze staly rozmiar. Zreszta ilosc plikow mozliwych do wpakowania dobierzesz sobie sam wedle potrzeb
W celu zapisu robilbym tak:
- Odczytywal naglowek z istniejacego pliku.
- Sprawdzal ostatnia pozycje w tym naglowku
- Pobieral jej offset koncowy (pozycje w pliku)
- Rozpoczynal zapis nowego pliku na pozycji offset_koncowy+1
- Dodawal do naglowka informacje o nowym pliku, jego offsecie poczatkowym i koncowym
Troche to skomplikowane, zreszta moze i niepotrzebnie, ale czesto uzywalm podobnego mechanizmu przy tworzeniu plikow z danymi do gier - sprawdza sie.
Pozdrawiam.
Dzięki !!!