![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Повторный запуск приложения
Beton © (2004-07-07 09:52:00)Часто бывает, что приложение после старта не сразу отображает главную форму, а пользователь, думая, что программа не запустилась, запускает ещё один(или сто, есть такие придурки) экземпляр приложения. Подскажите как этого избежать.
Reindeer Moss Eater (2004-07-07 14:35:00) [1]Глупость какая
TUser (2004-07-07 14:32:00) [2]
> Скажу больше: есть даже программисты-придурки, создающие
> такие приложения.
Они работают в M$ и создают IE и Проводник :)
Reindeer Moss Eater (2004-07-07 13:46:00) [3]Часто бывает, что приложение после старта не сразу отображает главную форму,
Обычно в таком приложении 100 форм, на каждой есть экземпляр наследника TDataSet у которого Active := True еще в дизайне выставлено. И обычно все формы создаются автоматически.
... а пользователь, думая, что программа не запустилась, запускает ещё один(или сто, есть такие придурки) ...
Скажу больше: есть даже программисты-придурки, создающие такие приложения.
Beton (2004-07-07 13:12:00) [4]Спасибо всем
StarWolf (2004-07-07 10:23:00) [5]Ой, извини TUser. Я не заметил твоего сообщения.
2 Beton: мое можно считать как-бы разширением TUser'a.
StarWolf (2004-07-07 10:22:00) [6]Ну я бы посоветовал для этого сделать сплеш-форму, которую выдавать перед появлением главного окна. Т.е. первой строчкой в FormCreate показывать эту сплеш (только НЕ в модальном режиме), а последней (или первой в FaorActivate) убирать.
TUser (2004-07-07 10:03:00) [7]splash-окошко приделай и путь он не думает.
grom (2004-07-07 09:57:00) [8]http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=988619824&n=15
Думкин (2004-07-07 09:56:00) [9]1. Для начала посмотреть FAQ - местный.
2.SemaphoreID := CreateSemaphore(nil, 0, 1, PChar('C86AEE87-5875-4ABF-B5A1-1D614A80A826'));
{чтобы не запускалось приложение повторно}
if GetLastError = ERROR_ALREADY_EXISTS then Halt(0);
3. Пользователь не должен так думать, думать надо вам, чтобы сделать так чтобы он так не думал. уфф.
4. А ваша программа не должна принципиально 2 раза запускаться или только при запуске?