ChunkReadSize

          Property 
          Member of  ScriptUtils.ASPForm 

Description
Specifies length of blocks readed from the client. ASPForm will read data source data using Request.BinaryRead(ChunkReadSize) method.
Syntax
vChunkReadSize = ASPForm.ChunkReadSize
ASPForm.ChunkReadSize = vChunkReadSize
Returns
Long
Remarks
1. Default value is 4kB bytes.
2. 0 (Zero) means that the source data are read in one block. There is no good idea to read whole data in one block - see note about IIS bellow.
3. If the source form size exceeds ScriptUtils.ASPForm.MaxMemoryStorage value, ASPForm will consume only 2*ChunkReadSize of physical memory. 4. ChunkReadSize should be
ChunkReadSize * n1 = PutReadSize
ChunkReadSize * n2 = UploadReadAheadSize
where n1 and n2 are integers.

Note about IIS and source binary data stream: IIS reads 48kB of data first (by default, see UploadReadAheadSize property of IIS). All other data are read in 8kB blocks (see PutReadSize property of IIS). The best value for UploadReadAheadSize is 0 (zero), please see ScriptUtils.ASPForm.Upload - Monitor and handle upload state/result article.

You can read/change this IIS values for web server, web site, folder or exact upload script:

  Dim WebServer, UploadReadAheadSize, PutReadSize
  Set WebServer = GetObject("IIS://localhost/W3SVC[/sitenum[/folder[/uploadscript.asp]]]")
  
  'Get UploadReadAheadSize property
  UploadReadAheadSize = WebServer.UploadReadAheadSize
  
  'Set another size
  WebServer.UploadReadAheadSize = 0

  'Get PutReadSize property
  PutReadSize = WebServer.PutReadSize
  
  'Set another size
  WebServer.PutReadSize = 65536
Examples
 Upload - Read short source data in one block  
<%
'Sample file Form-ChunkSize.asp 
' 
'

'Create upload form
Dim Form: Set Form = Server.CreateObject("ScriptUtils.ASPForm")

If Request.TotalBytes>0 And Request.TotalBytes<100000 Then
  'Read short source data in one block 
  Form.ChunkReadSize = 0
  '
End If

'was the Form successfully received?
If Form.State = 0 Then
  Response.Write "<br>n of Items:" & Form.Items.Count
  
  Response.Write "<br>n of Fields:" & Form.Fields.Count
  Response.Write "<br>n of Files:" & Form.Files.Count
  Response.Write "<br>" & vbCrLf
  
End If'Form.State = 0 then
  
%>  
<br>sample For <A Href=http://www.motobit.com>HugeASP upload</A>
<form name="file_upload" method="POST" ENCTYPE="multipart/form-data" >
<input Name=SourceFile1 Type=File>
<input Name=SourceFile2 Type=File>
<input Name=Description1>
<input Name=SubmitButton Value="Submit >>" Type=Submit>
</Form>
  Other links for ChunkReadSize
Methods of ASPForm class
The ASPForm collection retrieves the values of form elements posted to ASP script by a form using the POST method. ASPForm can process multipart/form-data or application/x-www-form-urlencoded data with length up to 2GB.
      Easy to use, hi-performance ASP file upload component with progress bar indicator. Let's you upload multiple files with size up to 2GB to a disk or database along with another form fields. Works with large posts, any character set (including unicode utf-8). Contains one-click multiple files/folders download with on-the-fly compression (Using BinaryWrite/BinaryRead).
      Hi-performance text file logging for ASP/VBScript/VBA applications. Lets you create daily/weekly/monthly log files with variable number of logged values and extra timing and performance info.
       Lets you work with safearray binary data in VBS/JS. It also enables conversion between binary and String data using several code pages. ZLib compress and uncompress functions. Lets you transfer files using compressed stream from a client to server using IE.
      This library also enables calling of some Kernel and Advapi functions (performance, timing, sleep, configuration ...) and enables native work with INI files.


© 1996 – 2005 Motobit Software, help{at}pstruh.cz, help v. 2.16.14