我在主要使用try … catch块.
当我设置以下内容时
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-US"); Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");
这将处理所有异常并以英语打印
但是对于许多API而言,这在内部失败,特别是对于像目录访问那样被捕获的异常.还有什么需要做的吗?
所以主要问题是这个Execption
System.Net.sockets.socketException (0x80004005):
此后的消息不会出现在语言环境集中
解决方法
我能够通过使用Win32 FormatMessage代码块来完成此操作
[DllImport("Kernel32.dll",SetLastError=true)] static extern uint FormatMessage( uint dwFlags,IntPtr lpSource,uint dwMessageId,uint dwLanguageId,ref IntPtr lpBuffer,uint nSize,string[] Arguments);
并将langid设为英文!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。