在多字节的目标代码页中,没有此 Unicode 字符可以映射到的字符。 (异常来自 HRESULT:0x80070459)

shineran 2009-07-02 04:30:38
最近出现一个很特别的问题,在一个地址上的参数为中文且为奇数个时,当前页的开始的所有链接的请求的HttpApplication.Context都出现错误,导致从这个页开始的访问请求全部错误,包括样式引用、图片、IFRAME等(在经典模式下明显),提示
在多字节的目标代码页中,没有此 Unicode 字符可以映射到的字符。 (异常来自 HRESULT:0x80070459)


站点是放在WINDOWS 2008系统上,配在IIS7,池设置为集成模式。
反复测试,发现是在中文为奇数时,以当前页为出发点,所有后续请求的Context.Request.UrlReferrer对象错误,
是在Application.BeginRequest、AuthorizeRequest等这些事件的请求出错。
并且Context.RewritePath、Server.Execute、Server.Transfer、Context.Response.Redirect全部出错,
无法正常使用(奇怪的是Context.Response.Write()是正常的。)
,都是报同一错误“在多字节的目标代码页中,没有此 Unicode 字符可以映射到的字符。 (异常来自 HRESULT:0x80070459)
”。
所以伪静态的链接全部报错。
当然这个伪静态的地址其实是正常的,只要按回车重新访问一下或用JS跳转就正常(这个时候已经没有UrlReferrer对象了)。

错误地址:
http://XXX.XXX.com/XX.aspx?key=写字楼 或 http://XXX.XXX.com/XX.htm?key=写字楼
截图:
然后从这个页开始的所有链接都出错

“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------

在多字节的目标代码页中,没有此 Unicode 字符可以映射到的字符。 (异常来自 HRESULT:0x80070459)
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.ArgumentOutOfRangeException: 在多字节的目标代码页中,没有此 Unicode 字符可以映射到的字符。 (异常来自 HRESULT:0x80070459)

源错误:


行 83: if (serverName == "")
行 84: {
行 85: serverName = Context.Current.Request.Url.Host.ToLower();
行 86: }
行 87: return serverName;


都是在获取Current.Request.Url或Current.Request.UrlReferrer时出错。

需要特别说明一下:
1.这个错误仅在安装了Microsoft VM的IE上才会出现,其他的IE6\7\8及FF等正常
2.同样的代码配置在WINDOWS2003上访问正常,包括安装了Microsoft VM的IE也正常

不知道各位大哥有没有好的解决方法。
同样的代码放到WINDOWS2003 上是正常的
...全文
10032 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
顶,表示非常关注,有木有晓得滴?
整整代码 2012-07-27
  • 打赏
  • 举报
回复
观望。。还没有找到解决办法。。
csdnfan 2010-11-09
  • 打赏
  • 举报
回复
现在 才看到哦...可能是这样的,或许是发布的目录里有汉字,所以在这个没有完全盗版好的系统中才会出现这个错误...我的已解决
shineran 2009-07-23
  • 打赏
  • 举报
回复
结了吧。最后也没找好具体的原因和解决办法。
只有将中文的URL全部转编码了。
  • 打赏
  • 举报
回复
用Server.URLEncode方法编一下码
燃烧的荷尔蒙 2009-07-18
  • 打赏
  • 举报
回复
shineran 2009-07-06
  • 打赏
  • 举报
回复
各位朋友有用过IIS7服务器的吗?
都没有碰到这个问题吗?
MYINGBEI 2009-07-02
  • 打赏
  • 举报
回复
收藏
yagebu1983 2009-07-02
  • 打赏
  • 举报
回复
看不懂啊。。。

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧