Witam napisałem aplikacje na socketach.Po włączeniu aplikacja kopiuje sie do innego katalogu,
pod inna nazwe.Jak zrobic teraz zeby zamknac pierwsza aplikacje i uruchomic tą skopiowaną??
Próbowalem w OnClose,ale to nie działa bo pisze że aplikacja korzysta z tych samych
socketow.
0
0
dokładnie nie pamiętam, ale ja miałem problem z aktualizacją programu, spróbuj zezwolić na uruchamianie jednej kopii programu i przy próbie uruchomienia drugiej kopii czekaj na skończenie pierwszej.
0
uruchom drugą aplikację i wyślij jej np. komunikatem uchwyt do własnego procesu, zamknij pierwszą aplikację.
w drugiej aplikacji po otrzymaniu komunikatu z numerem procesu poczekaj, aż się on zakończy, a potem już bezproblemowo stwórz gniazda.
opcja dużo prostsza: twórz gniazda w try/catch, jesli się nie udało, to odczekaj kilkaset ms i spróbuj ponownie, aż do skutku przez kilkadziesiąt iteracji; jeśli się nie uda, dopiero wtedy rzucaj błędem. to rozwiązanie ma wiele braków, ale jest banalne w porównaniu do pierwszego.