Powiązanie programu z rozszerzeniem

Powiązanie programu z rozszerzeniem
N4
  • Rejestracja:około 13 lat
  • Ostatnio:ponad 12 lat
  • Postów:193
0

Stworzyłem prosty edytor tekstu, zapisujący do wymyślonego przeze mnie formatu .5zw. Niestety, aby otwierać plik, trzeba uruchomić standardowo program i wybrać z menu Plik opcję Wczytaj, a następnie znaleźć sam plik. Jest to bardzo uciążliwe, więc postanowiłem, że zmienię ustawienia Windowsa tak, by pliki o danym rozszerzeniu były kojarzone z moim programem. Da się to zrobić ręcznie, ale jeżeli będę rozpowszechniał program, to totalną głupotą będzie tworzenie instrukcji, jak dopasować plik. Gdzieś przeczytałem, że kojarzenie rozszerzeń jest zapisane w rejestrze, a więc:

  • Czy Java może edytować pliki rejestru? Jeśli tak, to
  • Jak zmienić zapis rejestru, aby rozszerzenie było powiązane z moim programem?

...
RE
Moderator
  • Rejestracja:około 18 lat
  • Ostatnio:około rok
0

Czy wpisałeś już w google java windows registry, a potem windows registry file associations i dlaczego nie?

Wibowit
  • Rejestracja:około 20 lat
  • Ostatnio:około godziny
0

Rejestr systemowy to czysto Windowsowy, a co za tym idzie nieprzenośny wymysł i dlatego nie ma go w Javie. Rejestr możesz obsługiwać za pomocą WinAPI, a do tego możesz użyć JNA: https://github.com/twall/jna

edit:
W sumie na SO są rozwiązania i bez tego.


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
edytowany 1x, ostatnio: Wibowit
N4
  • Rejestracja:około 13 lat
  • Ostatnio:ponad 12 lat
  • Postów:193
0

Rozumiem, dziękuję.


...
lipkerson
  • Rejestracja:ponad 17 lat
  • Ostatnio:ponad 2 lata
0

Tak jak wibowit Ci mówi - rejestr to tylko pod konkretny system, ale nie musisz od razu z JNI/JNA. Zapoznaj sie z poleceniem reg.exe i przełącznikiem /f a potem smiagasz już odpowiednie spreparowane polecenia z Runtime.exec( ... );


Another jam from the world for the jam from the voices of the world......
N4
  • Rejestracja:około 13 lat
  • Ostatnio:ponad 12 lat
  • Postów:193
0

Właśnie sprawdziłem, że można ustalać takie rzeczy przez komendy, a klasą Runtime pobawiłem się kiedyś, wysyłając moim kolegom program-troll wyłączający komputer :)


...

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.