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

Вернуться   Форум Flasher.ru > Flash > Flash Приложения: AIR, Zinc и тд.

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

Регистрация: Jul 2009
Сообщений: 77
По умолчанию относительные пути в SWF Studio

Привет, помогите пожалуйста разобраться с SWF Studio.
Есть основной swf, есть дополнительный, который нужно загрузить в него.
Простейший код в таймлайне:

Код AS3:
ssCore.init();
if (stage) {
	init();
} else {
	addEventListener(Event.ADDED_TO_STAGE, init);
}
function init(e:Event=null):void {	
	var swfLoader:Loader = new Loader(); 
	swfLoader.load(new URLRequest("data\mySwf.swf")); 
	addChild(swfLoader);
}
Проблема возникает при использовании относительных путей, с абсолютными такого нет.
Проблема такая:при запуске swf-файл работает нормально, ехе-файл созданный Adobe Flash работает нормально, ехе-файл созданный SWF Studio не может найти загружаемые swf’ы (в примере это mySwf.swf).

Если mySwf.swf поместить в туже папку, что и ехе-файл и соотвественео прописать
Код AS3:
swfLoader.load(new URLRequest("mySwf.swf"));
проблема остаётся

что делать?

Старый 09.03.2011, 08:27
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 2  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
Не пользовался SWF Studio, но все же попробую помочь.
1. Попробуйте использовать для указания пути к файлу глобальную константу ssGlobals.ssStartDir. Это по идее путь к папке, откуда запущено приложение. Прибавьте к нему "data\\mySwf.swf" ( с двумя слешами) и отдайте загрузчику. Предварительно потрейсите, валидный ли путь вышел, если что исправьте.
2. Ну, или там какой-то ssURLLoader есть еще. Типа класс для загрузки всякой всячины. Почитал хелп, советую вам тоже почитать, кстати. Там даже пример использования имеется.
Код AS3:
package
{
    import flash.display.Sprite;
    import flash.net.URLRequest;
    import flash.display.Loader;
    import flash.events.Event;
    import flash.net.URLLoaderDataFormat;
    import flash.net.URLLoader;
 
    public class ssURLLoaderTest extends Sprite
    {
        public var req:URLRequest;
        public var ldr:Loader;
        public var uldr:*;
 
        public function ssURLLoaderTest()
        {
            addEventListener(Event.ADDED_TO_STAGE, onAdded, false, 0, true);
        }
 
        public function onAdded(e:Event):void
        {
            removeEventListener(e.type, arguments.callee);
 
            ldr = new Loader();
            req = new URLRequest();
 
            if (ssCore.isEXE) 
                uldr = new ssURLLoader();
            else 
                uldr = new URLLoader();
 
            uldr.addEventListener(Event.COMPLETE, onComplete);
            uldr.addEventListener(ProgressEvent.PROGRESS, onProgress);
            uldr.addEventListener(IOErrorEvent.IO_ERROR, onIOError);
 
            req.url = 'loadme.swf';
 
            if (ssCore.isEXE) 
                uldr.bufferSize = '8192';
 
            uldr.dataFormat = URLLoaderDataFormat.BINARY;
            uldr.load(req);
        }
 
        public function onProgress(e:ProgressEvent):void
        {
            ssDebug.trace('onProgress: '+e.bytesLoaded+' of '+e.bytesTotal);
        }
 
        public function onIOError(e:IOErrorEvent):void
        {
            ssDebug.trace('onIOError: '+e.text);
        }
 
        public function onComplete(e:Event):void
        {
            ssDebug.trace('onComplete');
            ldr.loadBytes(uldr.data);
            addChild(ldr);
        }
    }
}
Там еще какая-то фича есть, называется ssBasePath. Указывается при настройках проекта, и грузить я так понял можно только из этой папки и ее подпапок.

Старый 17.03.2011, 11:52
filepark вне форума Посмотреть профиль Отправить личное сообщение для filepark Найти все сообщения от filepark
  № 3  
Ответить с цитированием
filepark

Регистрация: Jul 2009
Сообщений: 77
Спасибо. Да, выяснилось, что относительные пути у них не работаю, если используется кириллица, как выход, можно использовать абсолютные пути с определением места старта, упомянутые Вами.
Моя переписка с их поддержкой: http://www.northcode.com/forums/showthread.php?t=10400

p.s. я не первый раз обращаюсь с службу поддержки SWF Studio, стоит лишь удивляться их отличной работе (имхо, большая редкость)


Последний раз редактировалось filepark; 18.03.2011 в 19:36.
Создать новую тему Ответ Часовой пояс GMT +4, время: 23:45.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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