Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flash Приложения: AIR, Zinc и тд. (http://www.flasher.ru/forum/forumdisplay.php?f=94)
-   -   Запуск второго приложения из Зинка (http://www.flasher.ru/forum/showthread.php?t=110965)

moser 12.04.2008 19:39

Запуск второго приложения из Зинка
 
Привет всем!
Есть такая проблема: из зинки по кнопке запускается флеш-пректор на весь экран. Возможно ли сделать так, чтобы по повторному щелчку по кнопке в зинке, второй раз этот же проектор не запускался? А то можно назапускать их десятка два и больше, а мне это не нужно.
Заренее спасибо.

alexcon314 13.04.2008 00:07

проверяйте наличие запущенного прожектора в списке окон
mdm.System.getWindowList();
ну или через локалконнекшн можно проверять запущен уже экземпляр проектора или нет....

moser 13.04.2008 01:08

Я через поиск находил этот код, но не совсем понял, как его использовать. Подскажете?
Код:

mdm.Application.doEvents();
formTitle = mdm.Forms.MainForm.title = "Название основного окошка";
appTitle = mdm.Application.title = "Название свернутого окошка";
var wList = mdm.System.getWindowList();
var appList:Array = new Array();
var i = 0;
while (wList[i][1]) {
        if (wList[i][0] == formTitle || wList[i][0] == appTitle) {
                appList.push(wList[i][1]);
        }
        i++;
}
hwnd = appList[1];
if (hwnd) {
        mdm.System.sendMessage(hwnd, 0x0112, 0xF120, 1);
        mdm.System.setWindowFocus(hwnd);
        mdm.Application.exit();
}


chingachgoog 13.04.2008 02:09

на первый фрейм флешки вставляете этот код и все.
собственно это тут и обсуждалось
http://flasher.ru/forum/showthread.php?t=99840

alexcon314 13.04.2008 23:55

moser, насколько понял вас я, вы из под цинка запускаете обычный флеш-прожектор и не хотите чтобы можно было запускать несколько его копий одновременно? тогда локалконнекшн самое то.
сейчас нету времени пример стряпать.
просто в цинке организуете локалконнекшн с какимто фиксированным именем соединения, А ИЗ ПРОЖЕКТОРА шлете на это имя мессадж. цинк принимает его и обрабатывает: если ранее такие мессаджи он уже получал от предыдущего запущенного экземпляра, то проектор гасится, (скажем через тот же локаконнекшн шлется в прожектор мессадж типа "отрубайся"). про локалконнекшн ищите примеры в разделе AS1.0-2.0 (класс LocalConnection)
если прожектор делаете не вы и нет возможности использовать в нем такую схему, (код прожектора писали не вы), то через список окон тогда, или через список процессов при нажатии на кнопку в цинке сначала искать не запущен ли уже экземпляр прожектора ..
...
блин да чего мудрить - при первом же запуске прожектора из цинка удалите нафиг эту кнопку или enabled=false для нее и делов :D

moser 20.04.2008 13:27

alexcon314 спасибо. Последнее решение самое простое и самое гениальное.


Часовой пояс GMT +4, время: 23:38.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.