系统:Windows server 2003 english version with sp1
加了Wins服务后,wins不能启动,在事件查看器中看到如下描述
Description:WINS could not create the notification socket. Make sure the TCP/IP driver is installed and running properly.
WINS 可能没有创建通知套接字。 确保 TCP/IP 驱动程序已安装并且运行正常。
查了一下微软的KB,http://support.microsoft.com/default.aspx?scid=kb;zh-cn;153740
KB中原因描述
<script type="text/javascript">loadTOCNode(1, 'cause');</script>
在 WINS 服务器服务初始化, 服务检查对于该名称服务将绑定到端口数。 通过调用 GetServByName API 执行此服务。 此 API 必须找到服务文件(
%SystemRoot%/System32/drivers/etc下的services文件,该文件为windows套接字编程提供服务名到端口号的对应关系)。 如果服务文件已丢失, GetServByName API 将失败。 结果是, WINS 服务会引发异常表明该服务无法创建通知套接字。 错误日志中该异常将记录作为事件 ID 4179。(4179与4193描述内容一致)
解决办法:
打开注册表,定位到HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters.
查看DataBasePath的类型和键值,类型必须为REG_EXPAND_SZ ,默认值必须为%SystemRoot%/System32/drivers/etc。以我的系统为例DataBasePath的类型REG_SZ,这也就式问题所在,将其类型改为REG_EXPAND_SZ后重启Wins服务,问题即解决。