“系统”往往是个很大的概念,一件事开始很简单的发生了,在发展过程中,为了适应会不断增加新的元素, 一个新的“系统”就形成了,当它复杂到要用“网络”来形容的时候,它的维护相应的变得复杂,甚至难以控制。就像人体系统的疾病。Windows操作系统也是如此,出现 rp 问题自然可以理解(跟发现问题人的人品可没有关系)。
从网上邻居,访问本机共享的文件夹,出现:
*** 无法访问。您可能没有权限使用网络资源。请与这台服务器的管理员联系以查明您是否有访问权限
服务器存储空间不足,无法处理此命令。
访问机无法登陆共享机,显示:
无法访问。您可能没有权限使用网络资源。请与这台服务器的管理员联系以查明您是否有访问权限。找不到网络路径。
或
登陆用户密码框
搜遍了网上关于共享失败的解决办法,都失败了。难道真是所谓人品问题?
--------------------------------------------------------------------通过更改共享机的注册表,问题解决
要解决此问题,请在注册表中增大 IRPStackSize 值:
1. 单击开始,然后单击运行。
2. 键入 regedit,然后单击确定。
3. 导航到以下项:
HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/LanmanServer/Parameters
4. 在右窗格中双击 IRPStackSize 值。
如果 IRPStackSize 值仍不存在,请使用以下过程创建此值:
a. 在注册表的 Parameters 文件夹中,右健单击右窗格。
b. 指向新建,然后单击 DWord 值。
c. 键入 IRPStackSize。因为此数值名称区分大小写,所以请完全按照其显示的形式键入“IRPStackSize”。
5. 将“基数”更改为十进制。
6. 如果使用步骤 4 中描述的步骤创建了 IRPStackSize 值,则默认值为 15。在“数值数据”框中,键入20。
7.修改这个值后,不必重启计算机,可以停止“Server”服务再重新启动一下即可生效。
文件系统过滤驱动每增加一个就会使irpstacksize增加一层,Windows XP中默认的irpstacksize是15,如果文件系统过滤驱动超过这个数目就不够用了,返回的错误信息就是上面那个“服务器存储空间不足,无法处理此命令”。
修改注册表中对irpstacksize大小的定义
这个值默认是不存在的,需要自己建立,DWORD类型。Microsoft建议比默认值增加5个单位,即改成20(10进制)。
哪些程序会占用到文件系统的irpstacksize呢?常见的有反病毒软件、实时加解密软件、文件系统监视软件、虚拟磁盘软件、系统还原软件和部分软件防火墙,当然还有少数病毒也会占用。secWall作为实时加解密软件也会占用一层irpstacksize。有些人想不明白的是自己根本不可能安装15个以上这类软件,为什么会不够呢?其实不然,操作系统自己已经占用了好几层了,如果你用的原装系统(如一些捆绑操作系统的笔记本电脑),可能已经占得差不多了,再多装一两个这类软件就会超过15层。
C盘是操作系统所在的盘,有些工具软件只监视C盘而不监视其他盘,这也是C盘共享时容易出现这个问题的原因。