从 XP 访问 Windows 7 上的共享时出现系统错误 58

nys*_*ngh 16 windows-7

从 XP 访问 Windows 7 共享时收到以下错误消息。

发生系统错误 58。指定的服务器无法执行请求的操作。

两台机器在同一个域中。Windows XP 计算机可以查看和访问除 Windows 7 之外的所有其他共享。两台计算机都没有防火墙。

Gle*_*tle 20

更改本地策略中的 NTLM 设置对我不起作用。

这里提到了什么工作:链接文本

...您需要告诉 Windows 您希望将机器用作文件服务器,并且它应该相应地分配资源。将以下注册表项设置为“1?”:

HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\LargeSystemCache

并将以下注册表项设置为“3?”:

HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\Size

更改两个注册表设置后,我只需重新启动 Windows 7 中的“服务器”服务,现在共享工作正常。


nys*_*ngh 10

好的,这里是答案。

问题是双方都没有设置 NTML 响应。我必须在 xp 和 wind7 上设置以下内容,然后重新启动就可以了。

  1. GPedit.msc
  2. 视窗设置。展开“本地策略”并选择“安全选项”
  3. 替代方法:输入 secpol.msc 以启动编辑器
  4. 在列表中找到“网络安全:LAN Manager 身份验证级别”并双击它。
  5. 将设置从“仅发送 NTMLv2 响应”更改为“发送 LM 和 NTLM – 如果协商使用 NTLMv2 会话”


小智 9

在选择这些解决方案之一之前,了解确切原因可能会有所帮助。我最近在尝试将文件从 Windows 2003 Server 同步到 Windows 7 工作站时遇到了同样的问题。随机地,服务器将失去与 Win7 机器的连接,并且尝试使用 NET USE 命令映射驱动器将返回类似这样的状态 58。

重新启动 Win7 框会修复它,但这似乎很激烈。使用 Wireshark 进行更深入的查看,我们发现 SMB 请求将发送到 Win7 框,并且正在返回 SMB 回复“内存不足”。停止并重新启动 Win7 机器上的服务器服务解决了该问题,至少是暂时的,并且比重新启动更好更快。我希望大型系统缓存的注册表更改将完全解决它,但这些更改可能不适合永久更改,只是为了解决临时问题。