Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 05.11.2011, 00:14
Parez вне форума Посмотреть профиль Отправить личное сообщение для Parez Найти все сообщения от Parez
  № 1  
Ответить с цитированием
Parez

Регистрация: Nov 2010
Адрес: Ярославль
Сообщений: 249
Question Можно ли передать данные из внешнего ролика в загруженный с помощью LocalConnection?

Собственно, вопрос в заголовке)

Старый 05.11.2011, 01:04
scarbo вне форума Посмотреть профиль Отправить личное сообщение для scarbo Найти все сообщения от scarbo
  № 2  
Ответить с цитированием
scarbo
 
Аватар для scarbo

Регистрация: Jun 2008
Адрес: курский вокзал
Сообщений: 1,114
Конечно можно.
__________________
Я просто добрый шутник.

Старый 05.11.2011, 13:07
Parez вне форума Посмотреть профиль Отправить личное сообщение для Parez Найти все сообщения от Parez
  № 3  
Ответить с цитированием
Parez

Регистрация: Nov 2010
Адрес: Ярославль
Сообщений: 249
scarbo, у меня почему-то всё время выдаёт статус connection error.

Вот код для отправщика:
Код AS3:
var conn:LocalConnection;
 
private function mainLoaded(event:Event):void
{
	addChild(mainLoader);
	conn = new LocalConnection();
	conn.addEventListener(StatusEvent.STATUS, onStatus);
	conn.send("myConnection", "setUserData", uName, uId);
 
	trace(userData.data.uName);
	//trace("MainLoaded");
}
 
private function onStatus(event:StatusEvent):void
{
	switch (event.level)
	{
		case "status" :
			trace("LocalConnection.send() succeeded");
			break;
		case "error" :
			trace("LocalConnection.send() failed");
			break;
	}
}
Происходит после загрузки ролика.

А вот код в ресивере:
Ф-ция setConnection() запускается в конструкторе.
Код AS3:
private function setConnection():void
{
	conn = new LocalConnection();
        conn.client = this;
        try 
        {
              conn.connect("myConnection");
        } 
        catch (error:ArgumentError) 
        {
              trace("Cant connect...the connection name is already being used by another SWF");
        }
}
 
public function setUserData(uName:String, uId:int):void
{
	userName = uName;
	userId = uId;
	trace("Соединение Работает! "+userName);
}

Старый 05.11.2011, 13:33
strangedk вне форума Посмотреть профиль Отправить личное сообщение для strangedk Найти все сообщения от strangedk
  № 4  
Ответить с цитированием
strangedk
 
Аватар для strangedk

Регистрация: Oct 2010
Адрес: Харьков
Сообщений: 616
Записей в блоге: 1
Отправить сообщение для strangedk с помощью ICQ Отправить сообщение для strangedk с помощью Skype™
У вас 100% проблема в последовательности запуска одной и другой флешки

Я у себя запустил локально флешки с Вашим кодом:

1. reciever с результатом "success"
2. sender с результатом "success"
3. после запуска sender, reciever получил значения uName и uId

Старый 05.11.2011, 13:40
Parez вне форума Посмотреть профиль Отправить личное сообщение для Parez Найти все сообщения от Parez
  № 5  
Ответить с цитированием
Parez

Регистрация: Nov 2010
Адрес: Ярославль
Сообщений: 249
Ну я в принципе так и думал.. Получается лучше поставить таймер, например на 0.1 сек. и только после этого отправлять значения? Или есть какой-то другой выход?

Старый 05.11.2011, 14:11
strangedk вне форума Посмотреть профиль Отправить личное сообщение для strangedk Найти все сообщения от strangedk
  № 6  
Ответить с цитированием
strangedk
 
Аватар для strangedk

Регистрация: Oct 2010
Адрес: Харьков
Сообщений: 616
Записей в блоге: 1
Отправить сообщение для strangedk с помощью ICQ Отправить сообщение для strangedk с помощью Skype™
Если честно, я давно работал с LC, но там без таймеров точно
Но логика проста, изначально должна запуститься флешка создающая LocalConnection object, а потом другая, которая будет подключаться туда.

Я так делал например ограничение на двойной запуск флешки:
В любом экземпляре флешки создавался новый LocalConneciton, с проверкой на уже существующий объект LocalConnection с таким же именем.
Если такое имя LC уже было, то выводилось сообщение, и инициализация прерывалась.

Старый 05.11.2011, 16:02
Parez вне форума Посмотреть профиль Отправить личное сообщение для Parez Найти все сообщения от Parez
  № 7  
Ответить с цитированием
Parez

Регистрация: Nov 2010
Адрес: Ярославль
Сообщений: 249
Цитата:
Я так делал например ограничение на двойной запуск флешки:
В любом экземпляре флешки создавался новый LocalConneciton, с проверкой на уже существующий объект LocalConnection с таким же именем.
Если такое имя LC уже было, то выводилось сообщение, и инициализация прерывалась.
Интересный способ)
Короче видимо надо порядок действий немного поменять... буду думать..

Создать новую тему Ответ Часовой пояс GMT +4, время: 09:54.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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