Witam, chcę napisać prosty system, który o danej godzinie będzie wysyłał użytkownikowi powiadomienie. Przy obmyślaniu projektu jednak pojawiło się u mnie pytanie. mianowicie.
W jaki sposób optymalnie byłoby inicjować autostart aplikacji, skoro będzie ona częścią innego programu ?
Autostart aplikacji wraz z windowsem.
- Rejestracja: dni
- Ostatnio: dni
- Postów: 23
- Rejestracja: dni
- Ostatnio: dni
- Postów: 507
Nie piszę aplikacji Java, ale wydaje mi się, że jeżeli aplikacja jest częścią innej aplikacji to powinna tym zarządzać aplikacja nadrzędna. Czyli to ona jest uruchamiana wraz ze startem systemu i monitoruje aplikacje podrzędne
- Rejestracja: dni
- Ostatnio: dni
- Postów: 41
@Rozumek29:
Możesz zrobić skrypt instalacyjny Twojej aplikacji i tam ustawić autostart tej "podrzędnej". Na Windowsie jest to zwykle dodanie skryptu batchowego w odpowiednie miejsce (znajdziesz łatwo w googlach)
Gdzieś w tym kierunku bym szukał jeśli chodzi o Windows :)
- Rejestracja: dni
- Ostatnio: dni
- Postów: 23
Czyli właściwie warto po prostu warto wyeksportować ten system powiadamiania, który ma być podrzędy jako osobny plik jar.
- Rejestracja: dni
- Ostatnio: dni
- Postów: 2420
Dodaj odpowiedni wpis w rejestrze tak żeby apka uruchamiała się po zalogowaniu użytkownika. Wersja koszerna to dodanie ikonki w tray'u (to obok zegarka).
Dodaj wpis pod klucz:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
https://docs.microsoft.com/en-us/windows/win32/setupapi/run-and-runonce-registry-keys
Ponieważ to java, to jako ścieżkę do programu wykonywalnego musisz podać ścieżkę do programu java.exe z parametrem -jar your/app/path/duper-super.jar. Alternatywnie możesz użyć jednego z narzędzi to opakowania jar'a w exe np. https://github.com/libgdx/packr
Jeżeli chcesz żeby to się uruchamiało wraz ze startem systemu nawet jeżeli użytkownik nie jest zalogowany to użyj klucza HKEY_LOCAL_MACHINE ale w mojej opinii lepiej wtedy zrobić własną usługę i zarejestrować ją w systemie za pomocą narzędzia sc.exe.
- Rejestracja: dni
- Ostatnio: dni
- Postów: 110
Możesz użyć harmonogramu zadań. Niech odpala jakiś skrypt .bat wg wskazanych warunków.