![Java 应用程序的网络共享只读](https://linux22.com/image/1449165/Java%20%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E7%9A%84%E7%BD%91%E7%BB%9C%E5%85%B1%E4%BA%AB%E5%8F%AA%E8%AF%BB.png)
我们有一台装有 Windows 2008 R2 SP1 的 Windows 服务器。此服务器提供网络共享,我们称之为。所有域用户的Data
权限设置为。Read/Write
PC1 to PC4
本地网络中的多台 PC ( ) 已H:
使用相同的用户名将此网络共享映射为驱动器号MyUser
。
在此网络共享中,有一个特定 Java 应用程序的应用程序文件夹。因此,每台 PC 都通过打开 .exe 来打开该应用程序(假设H:\App\run-java-app.exe
)
在 PC1 和 PC2(均为 Windows 7)上,应用程序运行良好。在 PC3(Win 8.1)和 PC4(Win 7)上,应用程序打开但无法写入任何文件。因此,PC3 和 PC4 有只读权限。
问题陈述:
PC3 和 4 上的相同 Java 应用程序仅具有读取权限,而 PC1 和 2 上则具有读/写权限。
调试问题:
- 通过 Windows 资源管理器创建文件不会出错。例如,Word 可以在所有 PC 上写入文件夹。
- 所有 PC 都使用同一个用户连接共享文件夹。我已经尝试删除网络共享、重新启动并重新连接。没有成功。
- 我已经删除了服务器上的共享权限并重新创建了它们。没有成功。
- 为用户添加读/写权限每个人解决了问题
- 我已经编写了一个简单的 Java 应用程序,用于创建文件并写入内容。这也适用于所有 PC。
问题:
我该如何进一步调试该问题?有没有方法可以检查服务器上如何访问文件?
如果我使用 Word 等,PC3 和 4 可以写入网络共享,但 Java 应用程序没有写入权限。看起来只有这个特定的 Java 应用程序有问题。
答案1
这是一致的吗?我的意思是,PC3 和 PC4 始终是只读的,而其他的是读写的?这可能是文件锁定问题,导致其他用户先于他们访问?
PD:目前还不能发表评论,所以我只能通过问题来“回答”,抱歉。