Usługi interaktywane i ikona w tray'u

0

Przy pomocy WinApi napisałem usługę systemową działającą z poświadczeniami lokalnego konta systemowego. Oznaczyłem usługę jako interaktywną. W momencie uruchomienia wyświetlna ona w tray'u ikonę (przy pomocy TCoolTrayIcon), która pozwala na wyświetlnie okna ustawień programu i zakończenie pracy. Wszystko działa dobrze dopóki się nie wyloguję i zaloguję ponownie. Wtedy ikona w tray'u już się nie pojawia, a usługa nadal działa. Próbowałem różnych metod, ale żadna nie pozwała na wykrycie logowania się użytkownika i ponowne wyświetlenie ikony. Bardzo prosżę(wręcz błagam) o pomoc. ;-(

0

Usługi systemowe nie powinny raczej mieć dostępu do tray'a, bo nie są aplikacją użytkownika. Proponuję zrobić oddzielny proces - aplikację użytkownika, który udostępniałby ikonkę w tray'u i komunikował się z usługą.

0

hmm... a jak bys pobieral co kilka sekund PID procesu "explorer.exe" i sprawdzal, czy zgadza sie z tym ostatnim? jesli by sie nie zgadzal, oznaczalo by to, ze albo zalogowal sie ktos inny albo ze padl explorer...

0

Usługi systemowe nie powinny raczej mieć dostępu do tray'a, bo nie są aplikacją użytkownika. Proponuję zrobić oddzielny proces - aplikację użytkownika, który udostępniałby ikonkę w tray'u i komunikował się z usługą.
Patrz na przykład UltraVNC, działa jako interaktywna usługa i wyświetla ikonę w tray'u

1 użytkowników online, w tym zalogowanych: 0, gości: 1