|
0 / 0 / 0
Регистрация: 17.05.2014
Сообщений: 2
|
|
Реализация поиска запущенных копий приложения20.05.2010, 10:50. Показов 2781. Ответов 2
Метки нет (Все метки)
Добрый день, уважаемые. Задача учебная, столкнулся впервые, не знаю как реализовать.
Собственно задача звучит так: При запуске i-го экземпляра (i>2) приложения спросить пользователя, нужно ли его запустить... Проблема: Не знаю как реализовать поиск 2-х запущенных экземляров, FindWindow ищет только первый. Можно как то найти в цикле или другим путем? Подайте идею, пожалуйста. Добавлено через 30 минут Поздно заметил тему Builder`a, просьба модераторам перенести тему.
0
|
|
| 20.05.2010, 10:50 | |
|
Ответы с готовыми решениями:
2
Почему несколько запущенных копий программы не влияют на скорость? Онлайн в программе, мониторинг запущенных копий Ограничение на кол-во запущенных копий программы |
|
50 / 49 / 25
Регистрация: 03.04.2010
Сообщений: 100
|
|
| 20.05.2010, 11:37 | |
|
В начале программы делаешь CreateSemaphore, а потом проверяешь GetLastError. Если ERROR_ALREADY_EXISTS, то другая копия твоей программы уже была запущена и создала семафор
0
|
|
|
15 / 15 / 5
Регистрация: 19.05.2010
Сообщений: 41
|
||||||
| 20.05.2010, 11:42 | ||||||
Сообщение было отмечено как решение
Решение
Метод основан на EnumWindows. Критерий поиска копий - имя класса окна.
Идея в том, чтобы при запуске перебрать все открытые окна, узнавая их класс. Если класс совпадает с нашим приложением - это копия, скорее всего (если ты выбрал имя класса окна уникальное) =) Параметр - ссылка на счетчик. Так как вызов перечисления происходит до создания еще одного экземпляра окна, то счетчик должен быть > 1 (или >= 2).
1
|
||||||
| 20.05.2010, 11:42 | |
|
Помогаю со студенческими работами здесь
3
Ограничение кол-ва запущенных копий программы. Класс ограничения числа запущенных копий программы. Нужно ли явно освобождать Mutex Запуск нескольких копий приложения
Синхронизация процессов копий одного приложения Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: при создании документов установить период списания автоматически. . .
|
Вывод данных через динамический список в справочнике
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2.
Задача: вывести данные из ТЧ нетипового документа. . .
|
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению.
На форме документа создается. . .
|
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
|
|
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
|
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
|
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию.
2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
|
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
|