|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.03.2013, 16:53 | #1 |
Gamedeveloper
Форумчанин
Регистрация: 11.07.2012
Сообщений: 149
|
Tray l Первый запуск.
Привет, крайне интересует как сделать следующее:
Есть программа, которая находится в авторане, и внесена в поле 'Tray', если пользователь просто включил компьютер то программа не показывает форму, а находится только в трее. А если нажали на ярлык на раб.столе то программа открывается с формой. Возможно кто то сталкивался. |
24.03.2013, 17:02 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Чет не понял в чем задача...
Тебе нужно чтоб программа при запуске не показывала свое ню, а если уже запущенна - показывала?
I'm learning to live...
|
24.03.2013, 17:18 | #3 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
...чей ярлык нажали на рабочем столе, гладиолуса?
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
24.03.2013, 17:29 | #4 |
Gamedeveloper
Форумчанин
Регистрация: 11.07.2012
Сообщений: 149
|
Смотрите, если программа запущена автораном, т.е при включении компа, то она не показывает Формы, если через ярлык именно этой программы, то показывает форму. Хорошо бы, узнать как не запускать одну и туже программа через якрылык, т.е копии ее.
|
24.03.2013, 17:46 | #5 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
24.03.2013, 17:58 | #6 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,430
|
ПО при запуске пытается создать Memory Mapped File с именем X, если это удается, то эта копия ПО является самой первой, а не копией уже запущенной копии. ПО записывает в MMF свой идентификатор окна(Handle).
Дальше ловит сообщения от копий ПО. Если MMF создать не удастся, т.е. такой MMF кем-о создан в системе, то он открывается, читается содержимое(Идентификатор уже запущенной копии), и отправляется сообщение в это окно. Первый экземпляр ловит сообщение, и в зависимости от указаний, делает что-то. У меня это выползание окна к пользователю и закрытие запущенной копии. |
24.03.2013, 18:15 | #7 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
http://delphiworld.narod.ru/_all_articles_.html раздел Приложение своё - [68] Цикл "Как не допустить запуск второй копии программы"
I'm learning to live...
|
|
24.03.2013, 18:38 | #8 |
Gamedeveloper
Форумчанин
Регистрация: 11.07.2012
Сообщений: 149
|
С копиями ясно, а что на счет ?
"Если программа запущена автораном, т.е при включении компа, то она не показывает Формы, если через ярлык именно этой программы, то показывает форму." |
24.03.2013, 18:54 | #9 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
...в авторане, в свойствах ярлыка вашей программы там, добавьте любой символ параметром командной строки (это можно сделать как вручную, так и при программном прописывании в авторане), а в своей программе читайте параметры командной строки.
Таким образом, программа, запускаемая через авторан, будет запускаться с идентификатором, а любой другой запуск будет без этого параметра - отсюда программа будет знать, что делать (показывать форму или нет).
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
[C++] Переставить местами первый минимальный и первый максимальный элементы массива | Aaaaaa111 | Помощь студентам | 2 | 27.02.2012 11:56 |
Первый запуск | derElektroBesen | Visual C++ | 3 | 30.07.2011 20:07 |
Обработка матриц.В каждой строке матрицы найти первый минимальный и первый максимальный элементы и поменя | ride013 | Помощь студентам | 4 | 20.04.2011 13:14 |
первый запуск екзешника | Lemo | Помощь студентам | 2 | 08.06.2010 22:26 |