LolikZabójca Opublikowano 6 Grudnia 2019 Udostępnij Opublikowano 6 Grudnia 2019 Siemka, sytuacja wygląda tak: mam zestaw programów w C# jako exe na VPSie. Muszę zrobić aplikację na tego vpsa z linuxem najlepiej w C++, ale może być i C#, która odpali wybrany program .exe przez mono(program jest oczywiście w pełni zgodny z mono na linuxie i testowany już ręcznie) i zamknie go w wybranym przeze mnie momencie. Wchodząc w szczegóły chodzi o to że program który muszę napisać będzie pobierał z innego serwera listę aplikacji które mają być uruchomione z pakietu programów w mono(.exe C# tak jak wspominałem) i zamykać dany program z pakietu jeśli na liście go nie będzie. Ma to być swoisty kontroler pracy programów na tym VPSie. W jaki sposób uruchomić wybrany program przez mono na linuxie, a następnie przechowywać do niego wskaźnik(?) który pozwoli go zamknąć w wybranym momencie korzystając z C++, bądź C# pod mono? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Chell Opublikowano 6 Grudnia 2019 Filar Społeczności Udostępnij Opublikowano 6 Grudnia 2019 nie wiem jak wyglada mono, strzelam ze cos mniej lub bardziej w stylu `mono parszywa12.exe`, wiec czemu nie `pkill mono parszywa12.exe`? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LolikZabójca Opublikowano 7 Grudnia 2019 Autor Udostępnij Opublikowano 7 Grudnia 2019 2 godziny temu, Chell napisał: nie wiem jak wyglada mono, strzelam ze cos mniej lub bardziej w stylu `mono parszywa12.exe`, wiec czemu nie `pkill mono parszywa12.exe`? Mniej więcej tak. Dlaczego? Bo może być np. plik.exe otwarty 3 razy, w każdym inne dane wejściowe i muszę zamknąc określony z nich. Może inaczej to wygląda tak mam katalogi np.: Katalog1 Katalog2 Katalog3 i w każdym znajduje się plik.exe(o tej samej nazwie ma się rozumieć). Program dostaje dane z serwera że ma uruchomić plik.exe z Katalog1 i Katalog2. Potem dostaje informację, że ma zamknąć plik.exe z Katalog2, ale urochimć z Katalog3. Muszę więc mieć opcję zamknięcia konkretnego procesu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Chell Opublikowano 7 Grudnia 2019 Filar Społeczności Udostępnij Opublikowano 7 Grudnia 2019 to podawaj szerszą ścieżkę, np `mono katalog1/plik.exe', wtedy podajesz `pkill mono katalog1/plik.exe`. A jeżeli to też jest za mało, to jest bardzo duża szansa że mono zwraca PID - w takim wypadku przechowuj to PID, i później możesz rzeczony proces zabić przez `kill -9 [pid]` Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
unveres Opublikowano 29 Grudnia 2019 Udostępnij Opublikowano 29 Grudnia 2019 Pewnie już sobie poradziłeś, ale i tak napiszę (może komuś się przyda): w C/C++ wystarczy skorzystać z jakiegoś wariantu exec oraz z killa, a jak chcesz informacji o już odpalonych procesach to musisz pogrzebać w katalogu /proc/. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się