![]() |
|
||||||||||
|
|
|
|||||
|
Регистрация: Jul 2009
Сообщений: 77
|
Привет, помогите пожалуйста разобраться с SWF Studio.
Есть основной swf, есть дополнительный, который нужно загрузить в него. Простейший код в таймлайне: 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 поместить в туже папку, что и ехе-файл и соотвественео прописать проблема остаётся что делать? |
|
|||||
|
listener
|
Не пользовался SWF Studio, но все же попробую помочь.
1. Попробуйте использовать для указания пути к файлу глобальную константу ssGlobals.ssStartDir. Это по идее путь к папке, откуда запущено приложение. Прибавьте к нему "data\\mySwf.swf" ( с двумя слешами) и отдайте загрузчику. Предварительно потрейсите, валидный ли путь вышел, если что исправьте. 2. Ну, или там какой-то ssURLLoader есть еще. Типа класс для загрузки всякой всячины. Почитал хелп, советую вам тоже почитать, кстати. Там даже пример использования имеется. 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); } } } |
|
|||||
|
Регистрация: 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. |
|
|
« Предыдущая тема | Следующая тема » |
|
|