FtpWebRequest 的杂症 - "The server committed a protocol violation","基础连接已经关闭: 服务器提交了协议冲突"...

基于.Net Framework 2.0的客户端,在开发用的VISTA和Server 2008上一切正常,放到客户机器上,有的总是报错

"The server committed a protocol violation"(中文系统是"基础连接已经关闭: 服务器提交了协议冲突").

后来发现是由于FTP服务器返回了非法字符,导致 FtpWebRequest 报错.

但是为什么只会在部分XP用户上出现呢?

打开目录C:\Windows\Microsoft.NET\Framework\v2.0.50727,发现system.dll版本存在问题.

Server 2008的版本号为2.0.50727.3053.

Windows XP的版本号为2.0.50727.42.

 

先只是把2008的system.dll拷贝过去,无效.

后来想到.Net Framework 2.0是有SP1补丁包的.

 

解决方法:

打上.Net Framework 2.0 SP1补丁,报错解决.

 

PS.打了.Net Framework 2.0 SP1补丁的system.dll版本号变成了2.0.50727.1433.(还是比2.0.50727.3053低.不过FtpWebRequest已经没问题了)

 

虽然解决了,但是问题是,不能强制每个客户去更新.Net Framework 2.0 SP1,郁闷中

转载于:https://www.cnblogs.com/wysky/archive/2008/10/31/FtpWebRequest_protocol_violation.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值