Upload zip file (WinCe 5.0) using WebRequest
Hi all,
I am having problem sending zip file(binary file) using webrequest function from wince5.0 device to a webpage. The webpage will accept the stream sent from the device then save it as appropriate file. It works fine for any file with size less than or equal to 1.5kb. Any bigger files, it did not return any error that i can see but then the sent files are just not stored on the server? They are just lost.
And i tried so many ways but still hopeless. can you please help me out.
Here are my code:
FROM WINCE DEVICE:
.............
FileStream fs = null;
WebRequest req = null;
Stream reqst = null;
fs = new FileStream(SourceFilePath, FileMode.Open, FileAccess.Read);
int totalLength = (((int)fs.Length) + 1);
byte[] buffer = new byte[totalLength];
fs.Read(buffer, 0, buffer.Length);
req = WebRequest.Create(GlobalHandler.g_strUploadUrl);
req.Method = "POST";
req.ContentType = "multipart/form-data";
WebHeaderCollection WH = new WebHeaderCollection();
WH.Add("FileName", MyFileName);
req.Headers = WH;
req.ContentLength = buffer.Length;
reqst = req.GetRequestStream(); //add data to request stream
Print("Geting Request Stream");
reqst.Write(buffer, 0, buffer.Length);// (buffer, 0, buffer.Length);
......................................
CODE FROM WEBPAGE:
.................................................. ............
StreamWriter tw = null;
Stream st = null;
FileStream output = null;
Page.Request.ContentType = "multipart/form-data";
string strFileNamePrefix = Page.Request.Headers.Get("FileName");
st = Page.Request.InputStream;
output = new FileStream(System.String.Concat(dirPath, strUnit, "\\", strDirectory, "\\", TimeStampInFileNameFormat(), ".zip"), FileMode.CreateNew);
Byte[] buffer = new Byte[4096];
int byteReads = st.Read(buffer, 0, 4096);
while (byteReads > 0)
{
output.Write(buffer, 0, byteReads);
byteReads = st.Read(buffer, 0, 4096);
}
st.Close();
output.Close();
|