![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Jun 2008
Сообщений: 28
|
_root.qur_dir = mdm.Application.path; //start function create_time() { time = new Date(); mtime = time.getTime(); } // end function if (!pr_start) { create_time(); var e_apl = mdm.FileSystem.fileExists(_root.qur_dir + "conf2.txt"); if (e_apl == false) { mdm.FileSystem.saveFileUnicode(_root.qur_dir + "conf2.txt", mtime); } else { var loc_apl0 = mdm.FileSystem.loadFile(_root.qur_dir + "conf2.txt"); loc_apl1 = mtime - loc_apl0; if (loc_apl1 < 5000) { mdm.Application.exit(); } } pr_start = 1; } function up_time() { create_time(); mdm.FileSystem.saveFileUnicode(_root.qur_dir + "conf2.txt", mtime); } up_timer = setInterval(up_time, 1000); //end наверное,можно рассматривать это как вариант,если пришешь что-нибудь сразу под несколько осей,или если прога будет в трее и в титле какие - нибудь "нехорошие" символы имеются... как вариант если что,прошу сильно не бить ![]() и буду признателен,если кто подскажет еще варианты PS: TERRORist подсказал как уменьшить код. Последний раз редактировалось user123; 15.02.2009 в 15:13. Причина: TERRORist подсказал как уменьшить код |
|
|||||
|
Регистрация: Jun 2008
Сообщений: 28
|
TERRORist,"Allow only one application at the same time" это на какой вкладке?
я чета не нашел да,getTime() прикольно,упрощает код,спасибо |
|
|||||
|
listener
|
http://www.flasher.ru/forum/showthre...=104606&page=2
Есть и другие способы. Только это уже расширение. Вкладок таких не видел, и, вообще, вам зачем? |
|
|||||
|
Регистрация: Jun 2008
Сообщений: 28
|
alexcon314,да вот столкнулся с конкретной задачей,нужно было написать вобщем-то не очень сложное приложение,в основном "сидящее" в трее...
почитал кое-что по этому вопросу,в том числе и два способа из вашего FAQ.Первый вариант как-то сразу сам собой отмелся,испугало "В случае нештатного завершения работы приложения эта схема не работает".Второй повертел так и сяк,вобщем-то тоже работает плохо,если приложение сидит в трее и не видно formTitle Вот,пришлось "изобретать велосипед". |
|
|||||
|
Я просто предположил. Цинком и парой других аналогичных по назначению прог пользовался давно, около 2 лет назад, в одной была такая галочка.
Вобще говоря имхо флеш+цинк - это не лучший вариант "не очень сложного приложения, сидящего в трее"... Оперативки уж много хавает и весит относительно много... |
|
|||||
|
Регистрация: Jun 2008
Сообщений: 28
|
ок.предистория.
для одного сайта написал на as2 несложный градусник.Некий датчик снимает показания температуры и пишет в базу.Флешка раз в минуту забирает оттуда данные,ртуть елозиет,цифры меняются,все радуются,итд... Все.Но заказчик пожелал еще версию для десктопа,"такую же как на сайте,а еще чтобы сворачивалась в трей и прямо там рисовала циферку". вот отсюда у всего этого безобразия ноги растут |
|
|||||
|
listener
|
Тогда можно через расширение-длл.
При запуске ехе грузит длл (mdm.Dll()), и вызывает функцию, скажем, CheckInstanse(), в ней примерно такой код bool CheckInstance()
{
HANDLE hMutex = CreateMutex( NULL, FALSE, "My_Unique_Mutex_Name");
if(GetLastError()==ERROR_ALREADY_EXISTS )return true;
return false;
}
Да, кстати, есть же LocalConnection еще, в принципе, похоже работает, но без длл можно обойтись При запуске флэш шлет какой-нибудь мессадж на заранее известное имя коннкета, и если получает отзыв - значит, есть уже ранее запущенный экземпляр, ну или что-то наподобие.. Последний раз редактировалось alexcon314; 16.02.2009 в 09:29. |
|
|||||
|
Регистрация: Jun 2008
Сообщений: 28
|
alexcon314,за LocalConnection спасибо.Хорошая мысль.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 15:44. |
|
|
« Предыдущая тема | Следующая тема » |
|
|