anoniem Geplaatst: 13 oktober 2002 Delen Geplaatst: 13 oktober 2002 Ik wil graag een plaatje (JPG) in een stream zetten om deze als Stream over te sturen naar een andere computer. Ik gebruik de volgende code: [code:1:83a38ccab1] uses JPEG; ... var MemoryStream: TMemoryStream; JPG: TJPEGImage; begin // Afbeelding openen en in MemoryStream plaatsen JPG := TJPEGImage.Create; JPG.LoadFromFile('C:\Afbeelding.jpg'); MemoryStream := TMemoryStream.Create; JPG.SaveToStream(MemoryStream); JPG.Free; // MemoryStream versturen // ... MemoryStream.Free; end; [/code:1:83a38ccab1] Maar de grootte (SizeOf) de MemoryStream is maar 4 :-? Hoe kan dit en wat doe ik fout? Quote Link naar reactie
anoniem Geplaatst: 13 oktober 2002 Auteur Delen Geplaatst: 13 oktober 2002 Het werkt al... sorry. Het probleem lag ergens anders, niet bij SaveToStream. Quote Link naar reactie
anoniem Geplaatst: 13 oktober 2002 Auteur Delen Geplaatst: 13 oktober 2002 Hehehehehe... SizeOf... Inderdaad, de SizeOf van een pointer is 4 bytes. ;) Natuurlijk moet je dus de MemoryStream.Size property gebruiken! Maar dat weet je nu dus al. Verder, niet vergeten om de stream weer terug te spoelen, oftewel de positie weer aan het begin te zetten... Quote Link naar reactie
anoniem Geplaatst: 14 oktober 2002 Auteur Delen Geplaatst: 14 oktober 2002 [quote:eac563684e="Workshop Alex"]Hehehehehe... SizeOf... Inderdaad, de SizeOf van een pointer is 4 bytes. ;) Natuurlijk moet je dus de MemoryStream.Size property gebruiken! Maar dat weet je nu dus al. Verder, niet vergeten om de stream weer terug te spoelen, oftewel de positie weer aan het begin te zetten...[/quote:eac563684e] Dat was het nou precies, ook met die positie! SizeOf is idd altijd 4 bytes.... :oops: :oops: Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen