解决方案:
1、删除两个注册表选项;
按下windows键+R键,输入regedit,打开注册表,在文件目录里找到如下两个文件夹,删除这两个文件夹。
路径:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Winsock
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Winsock2
2、打开本地连接;重装TCP/IP协议;
a:如下图所示,选择安装,点击确定。

b:选择协议,点击添加。
c:选择从磁盘安装,在制造商文件复制来源输入C:\Windows\inf,点击确定。
d:选择IPV4和IPV6,这里以IPV4为例,IPV6重复一下本步骤。
备注:安装后不需要重启,直接就可以正常使用了。至此,这个问题就完美解决了!
温馨提示:通过上述方法,本人机器恢复成功,如有相同的情况的人,此方法仅供参考,非原创,再次对所有提供此方法的同志表示感谢。开机就提示“请安装TCP/IP协议,error=10106”的解决办法
一、问题描述:
今天开机时提示“请安装TCP/IP协议,error=10106”,现象是popo,qq等登录不了,IE浏览器等连不了网,使用ping命令ping其他机器和路由器都可以收到返回的数据包,但是远程桌面连接不能正常使用。
二、解决方法:
上网搜索,得到答案,需要重新安装TCP/IP协议,下面是copy下来并安装自己的重新安装过程加以修改的步骤,仅供参考。
一同学重启后不能上网,弹出信息TCP/IP错误,错误事件代码:10106。第一次遇见这个问题,还真比较郁闷,仔细想了想,大概重新装一下 TCP/IP协议就ok了。顺便呢,又上网溜达了一圈,看看有不有类似问题,以及解决方法。
经过我爬山涉水,翻山越岭阿,终于发现了一个解决方法。方法如下:
1,先备份这两个注册表选项:
HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/Winsock
HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/Winsock2
然后删除,做备份是为了安全起见,如果你胆够大,也不用的,呵呵
2,重启一下
3,打开网上邻居,选择你正在使用的网络连接,属性
4,选择安装,然后选择协议
5,选择"从磁盘安装",输入:/windows/inf 确定
6, 然后在TCP/IP协议前面打勾
7,完事手工
呵呵,或许对你有一定的帮助。
socket 10106问题解决日记
这两天解决了一个创建套接字(SOCKET)失败,错误码为10106的问题。从事网络编程的朋友可能也遇到过类似问题,大多数都可以通过重装系统解决。这次我想分析一下10106产生的根本原因,给大家提供另外一种思路,解决类似问题。
【环境】
WIN7,64位系统
【现象】
CAD2006平台程序不能联网,其他程序没有问题
【错误原因】
创建SOCKET失败,错误码10106
【尝试方法】
1. 在A.dll(非CAD程序启动时加载)的入口函数中测试网络连接,成功!
2. 在B.dll(CAD程序启动时加载)的入口函数中测试网络连接,失败!
3. 在B.dll的入口函数中手动加载ws2_32.dll成功,mswsock.dll失败,错误码127!
4. 卸载用户电脑上的卡巴斯基,不行!
5. 卸载cad重新安装,然后使用Registry Mechanic修复注册表,问题解决!
【原因分析】
使用MemDll加载mswsock.dll发现是修正IAT时失败了,具体原因是修正WahDestroyHandleContextTable函数地址时失败,
ws2_32.dll模块中找不到这个函数。我们知道,ws2_32.dll的5.1版本确实没有导出此函数,此函数在ws2help.dll中导出;
但是在6.1版本中(win7),ws2_32.dll导出了该函数。
进一步调试,在B.dll的入口函数中加载ws2_32.dll成功后,根据模块句柄获取模块路径,发现CAD2006平台程序中加载的ws2_32.dll模块路径在cad2006目录下,而其他程序则是在system32目录下。
令人不解的是,在cad2006目录下根本找不到ws2_32.dll文件,在整个系统中全局搜索,也只找到3个ws2_32.dll文件,都在系统目录下,并且都是6.1版本。手工拷贝一个6.1版本的ws2_32.dll文件到cad2006目录,问题依旧。于是怀疑是CAD平台程序的运行时环境出了问题(本质上是cad的运行时环境有问题),比如ws2_32.dll是不是真的加载成功了?获取到的ws2_32.dll的模块句柄是不是错乱了?是不是根据句柄获取模块所在目录的API错乱了等等。
尝试从已加载的ws2_32.dll模块中获取accept等5.1版本中的接口,都可以成功,这说明ws2_32.dll确实已经加载,并且有效,只是版本不对,是5.1,而非6.1。
最后将cad卸载掉重新安装,问题解决!
企业互联,融合发展;
精品培训,信而收益。
网络科技,创新管理;
服务经纬,始终如一。