PDA

Просмотр полной версии : Ошибки LocalConnection


grafillo!
01.03.2016, 13:49
Задача: нужно чтобы нельзя было запустить две флешки на одном компе одновременно.
import flash.net.LocalConnection;

var box1:box = new box;
var conn:LocalConnection = new LocalConnection();
conn.client = this;
conn.send("openCheck","loading","запускаем");


function loading(s:String){

txt1.text = s
}


try {
conn.connect ("openCheck");
} catch (error:Error) {
addChild(box1);
txt2.text = "Приложение уже запущено";
box1.x = 100;
box1.y = 100;
}

этот код работает,но вызывает следующие ошибки
Error opening URL 'http://fpdownload.adobe.com/pub/swz/crossdomain.xml'
Error #2044: Необработанный StatusEvent:. level=error, code=
Error #2044: Необработанный SecurityErrorEvent:. text=Error #2047: Нарушение изолированной среды: LocalConnection.send: C:\HomServ\home\troll\localconnect.swf\[[DYNAMIC]]\3 не может осуществить доступ к file:///C|/HomServ/home/troll/localconnect.swf/[[DYNAMIC]]/3.
не могу их испрввить что в коде не так и как реализовать задачу?

caseyryan
01.03.2016, 14:30
Надо запускать флешку со страницы, через http, чтобы она считала, что запуск с домена

grafillo!
01.03.2016, 14:57
а вот теперь не работает, слово "запускаем" появляется только когда запускаю вторую флешку, а нужно чтобы оно сразу срабатывало, то есть первая флешка запускается, а вторая проверяет если уже флешка запущена больше не запускать

undefined
01.03.2016, 17:04
невозможность запустить две флэшки можно организовать через SharedObject(схема с протухающим ключом),правда работать будет только в рамках одного браузера.Альтернатива - соединять флэшки через п2п (NetGroup),но тогда будет выскакивать окошко с разрешением включить п2п. Либо можно через свой сервер,правда тогда придется мудрить с авторизацией.

caseyryan
01.03.2016, 19:10
правда работать будет только в рамках одного браузера
Почему? Шерд объекты не зависят от браузера

undefined
01.03.2016, 19:13
Почему? Шерд объекты не зависят от браузера
Сейчас проверил в хроме и в ФФ - разные шареды.

grafillo!
01.03.2016, 19:51
помогите это какнить реализовать бес всякой доп фигни х)
пользователю не должно быть видно что эта функция вообще работает, он просто должен не мочь запустить два приложения, может как-то можно через локалконеккт сделать не зря же придумана эта функция.

Tails
01.03.2016, 20:01
Для 100% уникального запуска - только сервер. Без него - используйте LocalConnect и все. Если запустит, то запустит. Бессмысленно что то еще изобретать, без централизованной проверки (на сервере) любую защиту можно будет обойти.

В рамках своей машины, пользователь волен делать все что захочет.

grafillo!
01.03.2016, 20:20
мне не нужна сто процентность, пусть в разных браузерах запускает, мне нужно чтобы мне помогли пофиксить мой код чтобы он работал пожалуйста х)

Tails
01.03.2016, 20:24
Вы параметры для соединения не правильно задаете, почитайте документацию, каждый параметр за что отвечает.

caseyryan
01.03.2016, 20:35
Сейчас проверил в хроме и в ФФ - разные шареды.
Странно, ведь они хранятся в папке пользователя, а не в папке браузера. Даже известная хрень под названием Ever Cookie была на этом основана (частично)
Может дело в пеппер флеше?
У меня они все хранятся в одной папке C:\Users\Konstantin\AppData\Roaming\Macromedia\Flash Player\#SharedObjects , только что проверял.

undefined
01.03.2016, 21:16
добавил в тест оперу и ие - в опере тоже независимые so,ие, похоже использует шареды от ФФ. Вообщем вариант не шибко надежен.

Добавлено через 3 минуты
в еще одном хромиум браузере(comodo dragon) куки от хрома.

dimarik
01.03.2016, 21:53
C:\Users\Konstantin\AppData\Roaming\Macromedia\Flash Player\#SharedObjects

Как мило. Привет, Костя! )

Добавлено через 6 минут

Задача: нужно чтобы нельзя было запустить две флешки на одном компе одновременно.
Что-то знакомое до боли. Вот в гугле запрос накидал (https://www.google.ru/webhp?q=site:http:%2F%2Fflasher.ru+LocalConnection+dimarik) по своим постам на флешере.

Добавлено через 13 минут
Вот прикольный топик (http://www.flasher.ru/forum/showthread.php?t=209696) был.