Posiadam sporą ilość plików, które powinny być zaszyfrowane. Obecnie posiadam zaszyfrowane pliki na dysku, w folderze z aplikacją i jeśli jakiś potrzebuje w programie odszyfrowywuje konkretny i umieszczam go w folderze temp pobranym z System.getProperty("java.io.tmpdir") i gdy nie jest już potrzebny czyszcze folder. Zauważyłem jednak, że na niektóych komputerach występuje problem (z utworzeniem ukrytego katalogu lub z umieszczenim tam odszyfrowanego pliku. Może chodzi o to, że na niektórych komputerach nie mam uprawnień do tworzenia katalogu lub usuwanie plików (Miałem tak u siebie gdy program zainstalowałem w ProgramFiles)? W jaki najprostszy sposób mógłbym rozwiązać swój problem? Moze we właściwościach pliku jar dodać uprawnienia do tworzenia/ edycji plików dla wszystkich użytkowników lub w programie instalacyjnym aplikacji zaznaczyć opcję aby uruchamiał jar z uprawnieniami administratora? Na win 8, win 7 aplikacja działa, problem jest na XP. Liczę na pomoc.

- Rejestracja:ponad 21 lat
- Ostatnio:około 3 lata
- Lokalizacja:Space: the final frontier
- Postów:26433
Ale właściwie po co zapisujesz ten plik na dysku? Nie możesz go sobie trzymać w pamięci po prostu?

- Rejestracja:około 14 lat
- Ostatnio:ponad 5 lat
- Postów:400
Mam w aplikacji EmbededMediaPlayer z biblioteki vlcj, który odtwarza mi filmiki oraz obrazki (które powinny być zaszyfrowane). MediaPlayer do odtwarzania potrzebuje scieżkę do pliku w postaci Stringa, dlatego odszyfrowywuje potrzebny plik, zapisuje w folderze temp i wskazuje na niego utworzoną ścieżką. Czy da się to zrobić bez zapisywania na dysku? Z tego co widzę ByteArrayOutputStream zapisuje tablicę byte'ów do pamięci ale jak z tego wyciągnąć Stringa ze ścieżką? Metoda która przygotowywuje media:
/**
* Prepare a new media item for play-back, but do not begin playing.
* <p>
* When playing files, depending on the run-time Operating System it may be necessary
* to pass a URL here (beginning with "file://") rather than a local file path.
*
* @param mrl media resource locator
* @param mediaOptions zero or more media item options
* @return true if the media item was created; false otherwise
*/
boolean prepareMedia(String mrl, String... mediaOptions);
Będę wdzięczny za wszelką pomoc.

- Rejestracja:ponad 21 lat
- Ostatnio:około 3 lata
- Lokalizacja:Space: the final frontier
- Postów:26433
Rzuciłem okiem na dokumentacje do vlcj i da się trochę na okrętkę to zobić ;]
https://wiki.videolan.org/Media_resource_locator/
Z tego wynika że można teoretycznie wrzucić tam urla np. z http, więc mógłbyś w ten sposób przesyłać dane, bezpośrednio z pamięci, bez tworzenia plików. Ale może to tylko zbędna komplikacja ;)

- Rejestracja:ponad 21 lat
- Ostatnio:około 3 lata
- Lokalizacja:Space: the final frontier
- Postów:26433
Nie ma czegoś takiego jak "pobrać jakoś URL" dla obiektów w pamięci :) Najprościej byłoby otworzyć sobie socket i pisać nim na jakiś port dane a jako mrl podać
udp://@:portnumber
albo
tcp://@:portnumber
gdzie portnumber to numer portu na który wysyłasz dane.

- Rejestracja:około 14 lat
- Ostatnio:ponad 5 lat
- Postów:400
Ok dzięki spróbuję się z tym pobawić.
A czy sposób z Socketami jest uniwersalny, tzn czy będzie działał tak samo na wszystkich wersjach Windowsa (XP, Vista, 7, 8)? Nie miałem jeszcze zbyt dużego doświadczenia z Socketami, dlatego pytam.

- Rejestracja:ponad 21 lat
- Ostatnio:około 3 lata
- Lokalizacja:Space: the final frontier
- Postów:26433
Tak, będzie działać zawsze :) No chyba że chcesz to odpalić na jakiejś maszynie która nie ma żadnego interfejsu sieciowego, ale wiem gdzie byś taką znalazł ;]
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.