Использование org.apache.commons.io.FileUtils
File file = new File("F:/Lines");
Collection<File> files = FileUtils.listFiles(file, null, true);
for(File file2 : files){
System.out.println(file2.getName());
}
Используйте false, если вы не хотите файлы из подкаталогов.
Это возможно, хотя это требует, чтобы Вы сделали много кода. См. NtCreateToken и CreateToken. Вам нужен SeCreateTokenPrivilege, хотя это не будет проблемой, так как Вы работаете под NT AUTHORITY\SYSTEM. Можно затем использовать созданный маркер для исполнения роли в потоке.
Для части хранения пароля можно хотеть взглянуть на этот вопрос спрошенный недавно.
Это было моим ответом:
Вы могли использовать DPAPI, защита данных API , которая обеспечивает шифрование хранилища.
Это там только для этого типа проблемы.
Шифрование устройства хранения данных основано также:
существует шоу dnrTV с Karl Franklin показ точно, что необходимо для реализации этого и других функций шифрования.
исходный код от шоу также доступен на странице.
существует, конечно, много из другие статьи на том предмете.
Короткий ответ: Вы не можете без пароля пользователя или пользователя, называющего Ваш сервис через COM.
Для исполнения роли другого пользователя в процессе необходимо звонить ImpersonateLoggedOnUser
. ImpersonateLoggedOnUser
требует маркерного дескриптора. Существует несколько способов, которыми можно получить маркерный дескриптор:
LogonUser
. Это однако требует, чтобы Вы знали пароль пользователя. CreateRestrictedToken
, DuplicateToken
, или DuplicateTokenEx
. OpenProcessToken
или OpenThreadToken
If your activity stops, be sure not to keep any references to its views
?
– Gokhan Arik
18 July 2016 в 23:59