Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flash Приложения: AIR, Zinc и тд. (http://www.flasher.ru/forum/forumdisplay.php?f=94)
-   -   AIR: Проблема с записью в файл (http://www.flasher.ru/forum/showthread.php?t=128523)

пандус 11.08.2009 04:23

AIR: Проблема с записью в файл
 
По какой причине файл может не открываться в режиме записи (UPDATE или WRITE)?

Пытаюсь открыть таким кодом:
Код AS3:

var settingsFile:File = File.applicationDirectory.resolvePath("settings.xml");
var settingsFStream:FileStream = new FileStream();
settingsFStream.open(settingsFile, FileMode.WRITE);

Выдается ошибка:
"SecurityError: fileWriteResource
at runtime::SecurityManager$/checkPrivilegeForCaller()
at flash.filesystem::FileStream/open()
at LGCoverAS()[C:\Users\Ars\Desktop\LessonCompiler\LGCoverAS.as:28]"

Код стоит в самом начале конструктора, никаких файлов до этого не открывалось. Сам файл существует, для чтения открывается корректно. При этом если создавать какой-то новый файл и писать в него, то тоже все работает - то есть принципиально запись возможна.

Можно было бы предположить, что settings.xml открыт в какой-то другой проге, и происходит sharing violation, но он вроде бы нигде больше не открыт.

пандус 14.08.2009 16:38

ага, оказывается, просто нельзя писать файл в applicationDirectory.

am_devcorp 12.01.2012 00:07

а допустим такую ситуацию:

Код AS3:

var f1:File = new File(File.applicationDirectory.nativePath + "\\hello.txt")
var f2:File = new File("app:/hello.txt")
trace(f1.nativePath == f2.nativePath) //traces true

Далее если писать
Код AS3:

fs.open(f1, FileMode.APPEND)

то проблемы не возникает, файл пишется, поток закрывается, блокнотом открывается. А если

Код AS3:

fs.open(f2, FileMode.APPEND)

то вываливается с
[Fault] exception, information=SecurityError: fileWriteResource

Разъясните такую ситуацию, пожалуйста. В чём разница?


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

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