PC Review
Forums
Newsgroups
Microsoft DotNet
Microsoft Dot NET Compact Framework
How do I reliably download and save files on CE4.1
Forums
Newsgroups
Microsoft DotNet
Microsoft Dot NET Compact Framework
How do I reliably download and save files on CE4.1
![]() |
How do I reliably download and save files on CE4.1 |
|
|
Thread Tools | Rate Thread |
|
|
#1 |
|
Guest
Posts: n/a
|
Hi,
I'm having problems downloading and saving files from the Internet. When I run the following code multiple times it grinds to a halt on CE4.1 The first time I call it, it works ok, then it gets really slow, and if I leave it running it takes minutes to return. However the same exe running on the desktop is fine, and will download all files fine. I have a Nexio S160 connected using Wi-Fi, Any ideas ? Cheers, Steve. int download_file(string webname,string fname) { try { Stream str; System.Net.HttpWebRequest wr; System.Net.HttpWebResponse ws; FileStream fstr; wr=(System.Net.HttpWebRequest)System.Net.WebRequest.Create(webname); ws=(System.Net.HttpWebResponse)wr.GetResponse(); str=ws.GetResponseStream(); BinaryReader reader=new BinaryReader(str,Encoding.UTF8); int bytesToRead = (int) inBuf.Length; int bytesRead = 0; int n; while(bytesToRead>0) { n=reader.Read(inBuf,0,262144*4); if(n==0)break; bytesRead+=n; bytesToRead-=n; } str.Close(); ws.Close(); reader.Close(); fstr = new FileStream(fname, FileMode.OpenOrCreate,FileAccess.Write); fstr.Write(inBuf, 0, bytesRead); fstr.Flush(); fstr.Close(); } catch { return(1); } return(0); } |
|
|
|
#2 |
|
Guest
Posts: n/a
|
Steve <steve@hotmail.com> wrote:
> I'm having problems downloading and saving files from the Internet. > When I run the following code multiple times it grinds to a halt on CE4.1 > The first time I call it, it works ok, then it gets really slow, and if I > leave it running it takes minutes to return. > However the same exe running on the desktop is fine, and will download all > files fine. I don't know why you're having problems, but your reading code is definitely flawed. You're reading to the start of your buffer every time, rather than from the position you'd got to. Your call: n=reader.Read(inBuf,0,262144*4); should be n=reader.Read(inBuf,bytesRead,bytesToRead); -- Jon Skeet - <skeet@pobox.com> http://www.pobox.com/~skeet/ If replying to the group, please do not mail me too |
|
|
|
#3 |
|
Guest
Posts: n/a
|
Oops,
Just noticed that I posted the wrong reader code, like I said it did run fine on the desktop, but I've been trying all sorts to try and get it to work on CE4.1 . I Just noticed something weird however. Sometimes when I run it, it works as expected taking about a second per request and other times just sits there waiting. "Jon Skeet" <skeet@pobox.com> wrote in message news:MPG.1973f6b9dea2797598a06b@news.microsoft.com... > Steve <steve@hotmail.com> wrote: > > I'm having problems downloading and saving files from the Internet. > > When I run the following code multiple times it grinds to a halt on CE4.1 > > The first time I call it, it works ok, then it gets really slow, and if I > > leave it running it takes minutes to return. > > However the same exe running on the desktop is fine, and will download all > > files fine. > > I don't know why you're having problems, but your reading code is > definitely flawed. You're reading to the start of your buffer every > time, rather than from the position you'd got to. Your call: > > n=reader.Read(inBuf,0,262144*4); > > should be > > n=reader.Read(inBuf,bytesRead,bytesToRead); > > -- > Jon Skeet - <skeet@pobox.com> > http://www.pobox.com/~skeet/ > If replying to the group, please do not mail me too |
|
![]() |
|
| Thread Tools | |
| Rate This Thread | |
|
|

Main Page 

