JCIFS SmbException

Kat*_*hir 9 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)
Run Code Online (Sandbox Code Playgroud)

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

smb://domain;username:password@ip-address/<foldername>
Run Code Online (Sandbox Code Playgroud)

感谢您的帮助.

Nik*_*sov 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.
Run Code Online (Sandbox Code Playgroud)

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

本文包含该问题的解决方法.它需要编辑目标机器的注册表值,所以我不能称之为完整的解决方案.