博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
远程主机关闭了连接。错误代码是 0x80070057,与远程主机通信时发生错误。错误代码是 0x80070057...
阅读量:6969 次
发布时间:2019-06-27

本文共 941 字,大约阅读时间需要 3 分钟。

远程主机关闭了连接。错误代码是 0x80070057,与远程主机通信时发生错误。错误代码是 0x80070057

突然在异常错误日志中看到这个错误,虽然在测试中发现不影响流的传输,但是不代表没错误,解决方法如下
原理引用下面的文章:
http://hi.baidu.com/yore2003/item/c09da4adc18a1d278819d35a

Response.Flush();

Response.End();//结束文件下载

但是程序在运行时会报出“正在中止线程”的错误,可以确定的是引起错误的代码就是Response.End();

所以需要删除此方法。

在IIS 5.5下这样做问题就解决了,不过在IIS 7.0 下又会报出另外一个错误“与远程主机通信时发生错误。错

误代码是 0x800704CD。”

在网上翻查了一翻资料后,终于找到了解决方法:就是将Response.End();换成Response.Close();

总结一下,帮助对Response.Close的解释是关闭到客户端的连接。对Response.End的解释是停止该页的执行,并引发Application_EndRequest。

也就说用Response.End程序就直接停止后面的工作了转而触发Application_EndRequest,那么当程序在后

面还有代码需要运行时,程序就会抛出ThreadAbortException的异常。还有需要了解的就是end方法在不抛

出异常时还会调用flush的方法。

接着来,close方法是关闭了连接,也就说程序顺利执行完了所有代码后关闭了连接。

对 于只运行flush后报出的“与远程主机通信时发生错误”,我的理解是当执行了flush后在底层马上开始向客户端发送数据,但是flush貌似只能指示 程序开始连接发送,却没有停止关闭的标识,导致程序报出异常。当然这是在IIS 7.0下会出错(可能在IIS 7.0 开始在调用flush后需要显示关闭socket连接)。

所以以后再在用完flush后最好加上close。就像数据库连接一样,用完就关闭连接。

转载于:https://www.cnblogs.com/tangnie/p/3399229.html

你可能感兴趣的文章
iOS 使用xib定义一个View,修改frame无效问题解决
查看>>
用JavaScript获取页面上被选中的文字的技巧
查看>>
Hadoop(3)---如何构建HDFS--HA,YARN---HA
查看>>
hbase region超时问题
查看>>
PAT_A1034#Head of a Gang
查看>>
【Python基础】lpthw - Exercise 38 列表的操作
查看>>
多线程交叉运行思考
查看>>
Kafka管理工具介绍
查看>>
Microsoft Dynamics AX 2012 Resources Quick Reference
查看>>
Create Linux VM form
查看>>
spring的官方文真不错
查看>>
min-width,min-height,overflow,移动端
查看>>
消防给水(三)
查看>>
ie6 几个li上下排列会闪动的问题,嵌套div—外层div内层div都设置背景颜色,内层div背景色不显示的问题...
查看>>
小程序请求封装
查看>>
jquery after append appendTo三个函数的区别
查看>>
Python3常用内置函数
查看>>
dataGridView
查看>>
《Ray Tracing in One Weekend》、《Ray Tracing from the Ground Up》读后感以及光线追踪学习推荐...
查看>>
C语言/原子/编译,你真的明白了吗?
查看>>