Как сделать так, чтобы программа закрылась и сразу же запустилась заново?
1. В событии закрытия программы запускаешь новый экземпляр программы (WinExec, ShellExecut, CreateProcess)
2. В событии открытия программы проверяешь на наличие имеющегося экземпляра приложения (использовать можно эвенты, мутексы)
3. Если экземпляр присуствует, ждем по таймауту его закрытия (WaitForSingleObject).
4. После закрытия отображаем форму.
Не нужно никакого таймаута. Последней строчкой в в Application.Terminate или Form.Close (вы не указали как будет закрываться ваше приложение. Если принудительно, то первый вариант, если культурно - то второй ) главного окна программы нужно написать WinExec('полный путь к программе', SW_RESTORE) или воспользоваться функцией ShellExecute
Русская версия Invision Power Board (http://www.nulled.ws)
© Invision Power Services (http://www.nulled.ws)