Hi Tim, > Some people want to send large files. Currently, the entire file to be > sent is loaded into RAM (THttpSend document property), making the app a > memory hog. I wondered if there is any way currently to have the file > loaded chunk by chuck - it is already chunked for sending > (TTCPBlockSocket.SendBuffer)?
Problem here is lack of full stream support for both, GET and POST. I did have the same problems with large files in the near past, which was reason I created separated functions to performe full stream support for THttpSend (append abbility is included). TStream is used, avoiding TMemoryStream Document completely: function SZGetFile(URL: string; Stream:TStream): Boolean; function SZPostFile(URL: string; Stream:TStream): Boolean; Thus it is possible to set stream Position before call, allowing append functionality. For more precise receiving/sending, I have also enchanged methods, where it is used ranges, which is actually base for upper methods and can be used instead. If you wish, I may provide these methods to you by email (functions are a bit large for mailing list). Sasa -- www.szutils.net ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ synalist-public mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/synalist-public
