JCIFS SmbException

时间:2012-02-16 18:54:12

标签: smb jcifs

我正在尝试通过JCIFS访问公司网络中的共享文件夹。但是当我尝试列出共享文件夹下的文件时,它会抛出一个SmbException,如下所示,

jcifs.smb.SmbException: 0xC000009A
    at jcifs.smb.SmbTransport.checkStatus(SmbTransport.java:563)
    at jcifs.smb.SmbTransport.send(SmbTransport.java:663)
    at jcifs.smb.SmbSession.sessionSetup(SmbSession.java:316)
    at jcifs.smb.SmbSession.send(SmbSession.java:218)
    at jcifs.smb.SmbTree.treeConnect(SmbTree.java:176)
    at jcifs.smb.SmbFile.doConnect(SmbFile.java:911)
    at jcifs.smb.SmbFile.connect(SmbFile.java:954)
    at jcifs.smb.SmbFile.connect0(SmbFile.java:880)
    at jcifs.smb.SmbFile.getType(SmbFile.java:1282)
    at jcifs.smb.SmbFile.doEnum(SmbFile.java:1733)
    at jcifs.smb.SmbFile.listFiles(SmbFile.java:1715)
    at jcifs.smb.SmbFile.listFiles(SmbFile.java:1648)

0xC000009A说它是NT_STATUS_INSUFFICIENT_RESOURCES但是我需要做些什么来解决这个问题。共享文件夹只能由我自己访问。我使用了以下网址格式。

smb://domain;username:password@ip-address/<foldername>

感谢您的帮助。

2 个答案:

答案 0 :(得分:8)

我在使用JCIFS开发文件上传到Windows共享时遇到了同样的错误。

事实证明,目标Windows机器在系统日志中输入错误:

Source:        srv
Event ID:      2017
Task Category: None
Level:     Error 
Keywords:      Classic
User:          N/A
Computer:     SERVER01
Description:   The server was unable to allocate from the
system nonpaged pool because the server reached the configured limit
for nonpaged pool allocations.

在连接到现代(Vista及以上)版本的Windows时,使用较旧的(SMB1,例如Windows XP prooflink)版本的协议可能会导致此错误。

This article包含问题的解决方法。它需要编辑目标机器的注册表值,因此我无法将其称为完整解决方案。

答案 1 :(得分:3)