![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как узнать, сколько копий приложения запущенно?
тКнопка © (2008-04-10 23:53:00)Как узнать, сколько копий приложения работает в данный момент времени?
Leonid Troyanovsky (2008-04-13 10:33:00) [1]
> Семеныч (12.04.08 22:19) [33]
> Тогда плохо. Тогда придется прочесть ветку. Ну пусть не
> всю, но хотя бы [0] и [17]
Дык, все равно, непонятно, зачем каждый раз создавать-удалять папку.
А файлы можно создать with FILE_ATTRIBUTE_TEMPORARY & FILE_FLAG_DELETE_ON_CLOSE - FAF.
--
Regards, LVT.
Семеныч (2008-04-12 22:19:00) [2]> clickmaker © (12.04.08 19:06) [32]
Тогда плохо. Тогда придется прочесть ветку. Ну пусть не всю, но хотя бы [0] и [17]
clickmaker (2008-04-12 19:06:00) [3]> [25] Семеныч (11.04.08 14:26)
а если не нужна проге папка?
Германн (2008-04-12 01:05:00) [4]
> Loginov Dmitry © (11.04.08 23:04) [30]
> Удаляй временную папку при старте первого экземпляра. Это
> гораздо проще.
>
И не проще (судя по сабжу) и неверно по сути.
Loginov Dmitry (2008-04-11 23:04:00) [5]> Уточню. Задача такая: при закрытии программы, нужно проверить,
> если больше нет запущенных копий программы, то нужно удалить
> временную попку и все ее соджержание.
Удаляй временную папку при старте первого экземпляра. Это гораздо проще.
Efir (2008-04-11 20:34:00) [6]Можно еще использовать мьютексы.
тКнопка (2008-04-11 19:57:00) [7]
> KSergey © (11.04.08 07:44) [22]
> Для енумерации процессов у пользователя из под которого
> запущена прога может банально не хватить прав. А работать
> под админом - зло.
Это что значит, EnumProcesses или Process32First/Next не подойдет?
{RASkov} (2008-04-11 19:44:00) [8]> [26] тКнопка (11.04.08 19:41)
Ctrl+F ищи и подключай необходимые модули... так же просто F1 может помочь...
тКнопка (2008-04-11 19:41:00) [9]
> clickmaker © (11.04.08 11:41) [24]
> EnumProcesses или Process32First/Next
[Pascal Error] Unit3.pas(29): E2003 Undeclared identifier: 'Process32First'
[Pascal Error] Unit3.pas(30): E2003 Undeclared identifier: 'EnumProcesses'
Семеныч (2008-04-11 14:26:00) [10]Кошмар.
И ведь всего-то надо, чтобы программа держала папку открытой, а перед завершением закрывала и удаляла. Типа "не удалилась - значит, ее еще кто-то держит, да и ладно".
И никаких копий вообще определять не нужно.
clickmaker (2008-04-11 11:41:00) [11]EnumProcesses или Process32First/Next
тКнопка (2008-04-11 08:15:00) [12]EnumWindows подойдет?
KSergey (2008-04-11 07:44:00) [13]Для енумерации процессов у пользователя из под которого запущена прога может банально не хватить прав. А работать под админом - зло.
Германн (2008-04-11 04:07:00) [14]
> тКнопка (11.04.08 03:38) [20]
>
> Упс, ошибка, "временная папка".
>
> А если электричество выключат
А если электричество выключат, Это уже не твоя забота, если твоя задача не разработка "системы жизнеобеспечения"!
тКнопка (2008-04-11 03:38:00) [15]Упс, ошибка, "временная папка".
А если электричество выключат, ведь счетчики останутся? И там еще предусмотренно аварийное востановление. и т.д. ...
Вобщем, я решил остановиться на EnumWindows! Так можно? Дайте код! :)
Andy BitOff (2008-04-11 03:16:00) [16]> тКнопка (11.04.08 02:59) [17]
Сделай проще. Создай в этой "попке" файл а в нем счетчик и будет у тебя программа завершаться через проверку попки =)))
Германн (2008-04-11 03:08:00) [17]
> тКнопка (11.04.08 02:59) [17]
>
> Уточню. Задача такая: при закрытии программы, нужно проверить,
> если больше нет запущенных копий программы, то нужно удалить
> временную попку и все ее соджержание.
>
Эээ. Если не обращать внимание на "некую скабрезность вопроса", то чем не устраивают ответ [1]?
тКнопка (2008-04-11 02:59:00) [18]Уточню. Задача такая: при закрытии программы, нужно проверить, если больше нет запущенных копий программы, то нужно удалить временную попку и все ее соджержание.
Германн (2008-04-11 02:55:00) [19]
> Германн © (11.04.08 02:53) [15]
>
>
> > Riply © (11.04.08 02:40) [14]
>
> Саш. Дай ему код. Но в "черновике". Пусть поймёт всю сложность
> задачи.
>
Не. Не так сформулировал.
Дай ему код в "наброске".
Германн (2008-04-11 02:53:00) [20]
> Riply © (11.04.08 02:40) [14]
Саш. Дай ему код. Но в "черновике". Пусть поймёт всю сложность задачи.