co trzeba zrobic, aby np. po wcisnieciu na formie, ta wlasnie aplikacja sie wylaczy i wlaczyla ? czyli zrestartowala ?
Heh stary to przecież takie proste:
Form1.Hide;
Sleep(3000);
Form1.Show;
ShellExecute(0, 'open', Application.ExeName, '', '', SW_SHOWNORMAL);
Application.Terminate;
AdamPL napisał(a)
Heh stary to przecież takie proste:
Form1.Hide;
Sleep(3000);
Form1.Show;
Facet, to nie jest restart tylko chwilowe wstrzymanie pracy programu [!!!] [green]
Zależy w jakim celu: czy podmiany pliku uruchomieniowego, czy nie.
Jeśli tak, to najłatwiej stworzyć plik *.bat (usuwający i podmieniający plik wykonywalny; a ostatecznie uruchamiający nowy), odpalić go i zamknąć aplikację. Po uruchomieniu nowej skasować plik *.bat.
barszcz napisał(a)
AdamPL napisał(a)
Heh stary to przecież takie proste:
Form1.Hide;
Sleep(3000);
Form1.Show;
Facet, to nie jest restart tylko chwilowe wstrzymanie pracy programu [!!!] [green]
Dla zwykłego śmiertelnika wygląda jak restart [diabel]
Dla zwykłego śmiertelnika wygląda jak restart
Lecz jeśli aplikacja ugrzęzła w pamięci lub część funkcji, które wykonuje zawiesiły się, ten Twój "restart" raczej pogorszy, a nie naprawi problem! Restart ma służyć odświeżeniu aplikacji, ponownym uruchomieniu funkcji które wykonuje, a nie 3-sekundowe ukrycie formularza [!!!] [!!!] [!!!]
dla mnie to nie wyglada jak restart...
nie ja nie chce nic podmieniac... tylko po prostu wylaczyc i wlaczyc z powrotem program :)
dzieki barszcz :) smiga :)
troche popsulo...
[Fatal Error] Could not create output file '......../program.exe'
co z tym zrobic ?
kubakubakuba napisał(a)
dla mnie to nie wyglada jak restart...
nie ja nie chce nic podmieniac... tylko po prostu wylaczyc i wlaczyc z powrotem program :)
Wobec tego tak jak mówiłem:
ShellExecute(0, 'open', Application.ExeName, '', '', SW_SHOWNORMAL);
Application.Terminate;
Jednak to wygląda inaczej: wpierw uruchamiasz swoją aplikację w nowym procesie, dopiero później zamykasz ten stary proces. Efekt restartu - gwarantowany!
ok :) juz wsyzstko mam :) dzieki :)
napisz jakis maly programik ktory wzucisz do tempa a ktory bedzie przy stracie zamykal twoja aplikacje a potem ja otwierał, z kolei twoj program przy starcie zamyka tamten programik i wywala go z tempa. Moze to troche na okolo droga i troszke przekombinowana ale powinna dzialac
Eeee, ja mam głupie pytanie :D
Czy w delphi 5 jest procedura shellexecute? (powinna być)
Jeżeli tak to w jakiej bibliotece bo jak na razie to wyskakuje mi przepiękny komunikat podczas kompilacji
[Error] Unit1.pas(54): Undeclared identifier: 'ShellExecute'
Już mam - w uses trzeba dopisać ShellApi [wstyd]