在Visual Studio中调试网络程序时经常报下面这样的异常,异常的类型是IOException,内容为The specified registry key does not exist,展开里面的详情更是一头雾水,不知道到底是什么错误,而且这个异常只会报一次,后面的请求都是正常。

io_exception

今天忍不住Google了一把,才明白原来是.Net Framework的一次安全更新(MS12-074)导致的,要避免每次都无厘头的抛这样的异常也很简单,向注册表中添加一条记录LegacyWPADSupport即可。 32位版本:

Registry location: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework  
DWORD (32-bit) Value name: LegacyWPADSupport
Value data: 0

64位版本:

Registry location: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework
DWORD (32-bit) Value name: LegacyWPADSupport
Value data: 0

reg

参考:

HttpClient request throws IOException

扫描二维码,在手机上阅读!