try
{
byte[] buf = new WebClient().DownloadData(url);
}
catch
{
}
有时候程序在这里会自动退出,并且捕获不到任何异常!求解决思路与方法!
{
byte[] buf = new WebClient().DownloadData(url);
}
catch
{
}
有时候程序在这里会自动退出,并且捕获不到任何异常!求解决思路与方法!
解决方案 »
- socket xml数据交互啥意思
- Win7下调用SetWaitableTimer 不能把系统从Standby下唤醒
- 三层开发中, 怎样实现多表的操作?
- 我写了SOCKET有服务端和客户端,服务端没问题,但是客户端只有第一次发送的信息能收到,以后再发就收不到,如果把客户端改成每次发送重新建立SOCKET,发完后销毁就没问题,请问为什么?
- 如何让自己的WinForm程序又XP风格的界面?
- 怎么样向并口打印文本文件?
- C#中,存储图片问题
- 用vs开发软件,到底用微软的哪种操作系统好呢。另,哪个vs版本最好
- 我新建一个C#工程,......
- C#编程问题
- C#程序怎么在别的电脑上用?
- 导入命名空间问题
try
{
byte[] buf = new WebClient().DownloadData(url);
}
catch
{
}
有时候程序在这里会自动退出,并且捕获不到任何异常!求解决思路与方法!
{}
catch
{}
这个格式结构就行呀
就算我catch什么都不做,一般调试,如果try里代码出问题了,也会在catch处中断。,不要再说在catch里加什么 throw 之类的了。估计确实是9楼说的那种情况……发贴就是看看有没有其它达人有之方面处理的经验!(使用response.GetResponseStream() 还是偶尔会中断的,超时都设置成30000了)
webclient 一般需要设置一些属性
可以这样试试
WebClient client = new WebClient();
client.Headers.Add("Accept:*/*");
client.Headers.Add
...
设置的属性,跟你请求的地址有关。你可以用vsniffer之类的工具拦截看看
byte[] data = client.DownloadData(sUrl);即使异常,返回超时等也不会没有任何异常就退出。
{
byte[] buf = new WebClient().DownloadData(url);
}
catch(webexception e)
{
messageBox.Show(e.Message,"WebException");
}
catch (exception e)
{
MessageBox.Show(e.Message,"Exception");
}
首先看看 执行到try了么 还是在try前出错第二: DownloadData方法中是否有异常捕获和抛出机制,如果在这个方法中以及这个方法引用的方法中出现异常没有捕获,也会自动退出
建议: 一步步往回查,看看这个方法引用关系中的方法是不是都有异常捕获和抛出机制对于底层的异常,不建议就地处理,建议抛出到显示层再进行处理另外 最好少用
try{} catch{} 之类,这种最多时掩盖异常,而不是捕获和处理异常
用 try{}catch(AException e){}catch(BException e){}catch(CException e){}catch(Exception e){}进行处理