Nadpisywanie pliku wykonywalnego usługi podczas działania usługi

0

Wierzyłem, że uruchomiona usługa - jak każdy inny proces - blokuje plik wykonywalny (tak jak w użyciu).

W rzeczywistości muszę zatrzymać usługę, gdy buduję jej nową wersję w Visual Studio, a następnie uruchamiam ją ponownie.

Nie rozumiem, jak zaktualizowali plik wykonywalny bez zatrzymywania usługi (podczas wdrażania), a następnie - po tym - po prostu ponownie uruchomili usługę, aby zmiany odniosły skutek.

Czy ktoś ma na to jakieś wyjaśnienie?

Giulio
źródło
Użyj polecenia SC. Zatrzymaj usługę: sc stop service_name następnie zmień plik wykonywalny: sc create service_name binPath= abc.exe następnie uruchom usługę sc start service_name
Biswapriyo

Odpowiedzi:

1

W rzeczywistości pliku nie można usunąć (lub podobnie nie można go zastąpić bardzo to samo plik), ale można zmienić jego nazwę lub przenieść.

W ten sposób można go zastąpić.

Podobne pytanie tutaj (okazując zaskoczenie za to zachowanie).

Giulio
źródło