Windows Mobile使用C#的HttpWebResponse假死问题,请高手指点,不胜感激!
Sdhjt 2010-01-16 10:58:21 在WindowsMobile平台上,用C#的HttpWebRequest和HttpWebResponse类编写通信程序,代码片度如下:
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(new Uri(url));
req.Accept="*/*";
req.UserAgent = "Mozilla/4.0(compatible;PocketIE 5.0;Windows CE 5.2)";
req.Method = "POST";
req.ContentLength = pd.Length;
req.ContentType = "application/binary";
Stream outputStream = req.GetRequestStream();
outputStream.Write(pd, 0, pd.Length);
outputStream.Flush();
outputStream.Close();
HttpWebResponse res = (HttpWebResponse)req.GetResponse();//卡在了这一句上
byte[] ps = new byte[res.ContentLength];
int totalBytesRead = 0;
……………………………………………………
程序卡在了如上位置上,用Cellular Emulator观察,确实有数据传出和传入。换了WM6和WM6.5两个平台,都卡住了。换了一部i780真机也卡住了。卡住的现象就是,在WM上,程序界面没有任何响应,VS中也不报错。
同样的代码片段,放在PC上运行,可以正常返回结果。
我的目标平台是WM5.0 PocketPC,用的.NET CF 3.5
请大家帮帮忙,不胜感激哈!!