Разрешения Java и NTFS для системных файлов Windows - PullRequest
1 голос
/ 09 января 2012

Мне нужен доступ к системному файлу Windows, который находится на одной из моих виртуальных машин с Windows 7. (hiberfil.sys). Виртуальный диск отображается в Windows и может быть просмотрен. Однако Java сообщает, что доступ запрещен с использованием любого вида входного потока.

Я предполагаю, что это связано с разрешениями NTFS для файла, и поэтому мне нужно будет либо вступить во владение файлом, либо полностью удалить разрешения NTFS.

Я быстро поиграл с обоими 'takeown' и 'icacls' из Windows, но не могу понять, что синтаксис правильный.

Может кто-нибудь предложить способ получения доступа к файлу? Моей непосредственной мыслью было вызвать либо takeown, либо icacls из Java для удаления разрешений, но я не уверен, что это лучший маршрут.

Любые предложения будут с благодарностью.

Спасибо.

1 Ответ

1 голос
/ 09 января 2012

Я не уверен, поможет ли это, но вы пробовали использовать новый API файловой системы Java SE 7?

http://docs.oracle.com/javase/7/docs/api/java/nio/file/attribute/package-summary.html

http://docs.oracle.com/javase/7/docs/api/java/nio/file/package-summary.html

...