zabicie procesu po 5 minutach bezczynnosci

Odpowiedz Nowy wątek
2019-07-26 13:21
0

Witam serdecznie

Chciałbym przygotować skrypt, który zabijał by proces po 5 minutach bezczynności lub po zablokowaniu uzytkownika (Start -> Zablokuj). Mogę liczyc na jakies sugestie?

Pozostało 580 znaków

2019-07-26 13:50
2

Sugeruję najpierw zdefiniować pojęcie "bezczynności".
Na poziomie użytkownika i implementacji.


Szacuje się, że w Polsce brakuje 50 tys. programistów

Pozostało 580 znaków

2019-07-26 14:15
0

Mam oprogramowanie iHurtPrg, które podczas uruchomienia dwóch sesji na dwóch profilach windowsa blokuje dla jednego uzytkownika sprzedaz detaliczna. Dlatego chcialbym, aby w momencie blokady uzytkownika windows (domyslnie po 5 minutach) proces ten zostal zabijany, tak aby sprzedawca ktory sie zaloguje na swoj profil mogl dokonywac sprzedazy.

Prosciej niz w pierwszym poscie nie da sie tego wyjasnic. Jest proces iHurtPrg.exe i w przypadku gdy komputer nie jest uzywany to po 5 minutach bezczynnosci chcialbym aby ten proces został zabity, a najlepiej jakby został zabity po zablokowaniu uzytkownika windows (ctrl + l), ktory blokuje sie po 5 minutach bezczynnosci.

Pozostało 580 znaków

2019-07-26 14:21
2

Teraz już lepiej, wiadomo o co Ci chodzi. Mógłbyś jeszcze podać o jaki system chodzi. ale nie będę się czepiać ;)

Pierwsza myśl, jaka mi przychodzi - jako punkt zaczepienia dać wygaszacz ekranu. Zrobić jakiś własny wygaszacz, który od razu po uruchomieniu będzie zabijał wskazany proces.

Ponadto można oskryptować akcje podczas blokowania ekranu/logowania się usera - https://stackoverflow.com/que[...]n-lock-unlock-windows-station lub https://superuser.com/questio[...]hen-i-lock-unlock-my-computer

Jeszcze przychodzi mi do głowy napisanie jakiejś własnej aplikacji/usługi, która będzie siedzieć w tle i ubijać apkę, ale problemem będzie określenie, kiedy to się powinno stać- dlatego chyba lepszą opcją są podane powyżej linki.


That game of life is hard to play
I'm gonna lose it anyway
The losing card I'll someday lay
So this is all I have to say
edytowany 1x, ostatnio: cerrato, 2019-07-26 14:21

Pozostało 580 znaków

2019-07-26 14:48
0

Super, dziekuje za odpowiedz. Co by rozwinąć problem udało mi się ustalić co blokuje uruchomienie modułu sprzedaży detalicznej.

Samo oprogramowanie uruchamia się, nie można jedynie uruchomić modułu sprzedaży detalicznej, ponieważ blokuje się przez użycie sterownika dll do drukarki fiskalnej.

Ponizej wrzucam link do zrzutu ekranu z process explorer

https://zapodaj.net/3c312221396a1.jpg.html

Sam proces iHurtPrg.exe mogę uruchomić bezproblemu na dwóch logowaniach uzytkownikow Windows. Jedynie zaznaczony na czerwono dfKSDelioE_FMM.dll uruchamia się tylko na jednej sesji, a na drugiej już nie pozwala. Dlatego chciałbym zrobić tak, że np. po zablokowaniu konta Windows (ctrl + L) zabić sam ten dll.

A teraz przykład jak to wygląda:
Sprzedawca 1 uruchamia komputer, loguje się na swoje konto i uruchamia iHurtPrg.exe, loguje się na swoje konto i sprzedaje. Odchodzi od komputera, a komputer po 5 minutach bezczynności blokuje się (aplikacja jest ciągle uruchomiona). Podchodzi Sprzedawca2 i loguje się na swoje konto, uruchamia iHurtPrg.exe, loguje się na swoje konto i nie może uruchomić Sprzedaży (ponieważ Sprzedawca1 blokuje dfKSDelioE_FMM.dll). Dlatego chciałbym po zablokowaniu ekranu zabić ten proces (najlepiej samą bibliotekę DLL, ewentualnie caly proces iHurtPrg.exe) tak aby Sprzedawca2 lub kolejna osoba która się zaloguje mogła swobodnie sprzedawać.

Edit:
A system to Insignum iHurt ;)

Edit2:
Wsparcie firmy uwywa ręcę. Zasugerowali tylko, że można napisać skrypt Windowsowy, który zabija jakiś tam proces, ale nie wiedzą jaki. Proces udało mi się ustalić, teraz chciałbym go kill'em, a właściwie to kill'em gdy zostaje blokowany użytkownik (po 5 minutach lub przez Ctrl + L).

edytowany 2x, ostatnio: jazen, 2019-07-26 15:05
A co na to wsparcie firmy? - AnyKtokolwiek 2019-07-26 15:02

Pozostało 580 znaków

2019-07-26 16:38
1

Najprostsze obejscie to zobowiazanie sprzedawcy do wylogowywania sie kiedy odchodzi od komputera albo zalozenie wspolnego konta dla obu sprzedawcow


01010100 01110101 01110100 01100001 01101010 00100000 01101110 01101001 01100101 00100000 01101101 01100001 00100000 01101110 01101001 01100011 00100000 01100011 01101001 01100101 01101011 01100001 01110111 01100101 01100111 01101111 00101110 00100000 01001001 01100011 00100000 01110011 01110100 01101111 01101110 01110100 00101110

Pozostało 580 znaków

2019-07-26 16:41
0

Nie chodzi mi o obejscie problemu.

Dla mnie najprostsze bylo zrobienie .bat ktory pierw zabija proces iHurtPrg.exe, a później go otwiera. W ten sposób zabija uruchomiony proces przez poprzedniego uzytkownika. Fajnie by bylo gdyby nie zabijal calkowicie programu, a sam DLL, tylko nie moge znalezc odpowiedzi jak i czy mozna w ogole zabic sam DLL bez całego procesu.

Pozostało 580 znaków

2019-07-26 16:41
0

A może zrobić skrypt batch ubijający ten proces i wrzucić go tak by uruchamiał sie przy logowaniu użytkownika Windows?
http://wojciechszylar.blogspo[...]tow-logowaniawylogowania.html

Pozostało 580 znaków

2019-07-29 13:07
0

Kurcze, stanąłem w miejscu. Za pomocą ProcessExplorer gdy zabijam Handle \Device\Serial0 mogę używać sprzedaży na kolejnym użytkowniku. A jako ze chcialem zrobic skrypt który będzie to robił przy każdym logowaniu użytkownika to pobrałem Handle v.4 ale niestety Serial0 nie znajduje i nie moge zamknąć go poleceniem. Probowalem takze wylaczac w menedżerze urządzeń Port COM i uruchamiac ponownie - niestety bez efektu. Jakies pomysly jak mozna zamknac tego Handle?

EDIT:
Za pomocą devcon udaje mi się wyłączyć urządzenie COM1. Jednak mam problem, ponieważ w przypadku gdy program jest uruchomiony i uzywa modułu sprzedażowego, to polecenie devcon disable ACPI\PNP0501* informuje, ze urzadzenie zostanie wylaczone po restarcie komputera. Macie jakis sposob zeby to sforsowac? Jakos silowo go wylaczyc?

edytowany 1x, ostatnio: jazen, 2019-07-30 13:44

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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