VerifyError: Error #1107: ABC 数据已损坏,尝试的读取操作超出范围。

    技术2025-10-05  7

    在从flash中导出swc文件,然后在flex中使用,一开始都运行正常,但当我删除并重新建立元件并重新生成swc文件后,在flex中就出问题了:

     

    VerifyError: Error #1107: ABC 数据已损坏,尝试的读取操作超出范围。    at flash.display::MovieClip/nextFrame()    at mx.managers::SystemManager/deferredNextFrame()[C:/autobuild/3.2.0/frameworks/projects/framework/src/mx/managers/SystemManager.as:319]    at mx.managers::SystemManager/preloader_initProgressHandler()[C:/autobuild/3.2.0/frameworks/projects/framework/src/mx/managers/SystemManager.as:2945]    at flash.events::EventDispatcher/dispatchEventFunction()    at flash.events::EventDispatcher/dispatchEvent()    at mx.preloaders::Preloader/timerHandler()[C:/autobuild/3.2.0/frameworks/projects/framework/src/mx/preloaders/Preloader.as:398]    at flash.utils::Timer/_timerDispatch()    at flash.utils::Timer/tick()

     

    源文件:

    <?xml version="1.0" encoding="utf-8"?><mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="init()"><mx:Script>    <![CDATA[        import mx.flash.UIMovieClip;        import mx.core.UIComponent;        import mx.containers.Canvas;        import mx.charts.CandlestickChart;        private function init():void        {            var cans:Canvas = new Canvas();            addChild(cans);            trace('---------')            new Main();//            trace(new Main() is UIMovieClip)             var sprite:UIMovieClip = new Main();                         cans.addChild(sprite);            //var swc:Test = new Test();            //swc.output();        }    ]]></mx:Script></mx:Application>

     

    flash源文件:

    package{    import flash.display.Sprite;    import flash.display.MovieClip;    import mx.flash.UIMovieClip;    import flash.display.Shape;    public class Main extends UIMovieClip    {        private var shape:Shape = new Shape();                public function Main()        {            this.addChild(shape);            drawShape();        }                public function drawShape():void        {            shape.graphics.lineStyle(2,0xff0000);            with(shape.graphics)            {                beginFill(0x00ff00);                drawCircle(100,100,70);                endFill();            }        }

        }}

     

    flv中只有一个mc,并将其转换为flex组件。根据提示,应该是:此错误指示 SWF 中的 ActionScript 无效。 但依然不得其解!

     

    最新回复(0)