У меня есть код, который сохраняет экранный объект локально в виде файла изображения, но в какой-то момент он начал метать ошибку 2174. Этот код вызывается либо из контекстного меню, либо из события клавиатуры ,actionscript 3 filereference 'save' throws error
var sourceBmd:BitmapData = new BitmapData(displayObject.width,displayObject.height);
sourceBmd.draw(displayObject,new Matrix(displayObject.width,0,0,displayObject.height));
var jpgEncoder:JPGEncoder = new JPGEncoder(80);
var byteArray:ByteArray = jpgEncoder.encode(sourceBmd);
try
{
filereference.save(byteArray,"posterImage.jpg");
}
catch (e:Error)
{
Debugging.alert("error: ",e.message);
}
, как вы можете видеть, FileReference имеет только одно действие - поэтому нет причин для ошибки 2174, чтобы быть выброшено. в случае, если вам интересно - я публикую для флеш-плеера 10.0
ОБНОВЛЕНИЕ: я нашел, что это имеет отношение к версии флеш-плеера: на 10.3 оно работает, а при 11.1 - в случае сбоя.
любые идеи? cheers, eRez
пожалуйста, убедитесь, что вы строите для флэш-плеер версии 10.0.0 или выше –
я делаю - это не изменится очень долго – eRez
чеке пост от @The_asMan. Вы не можете запускать save() программно. Он должен находиться внутри «функции обработчика пользовательских действий». Как, например, в функции обработчика кнопки нажмите. –