На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: PIL
  
> Как правильно работать с SharedObject? , SharedObject и Dictionary
    Как правильно хранить/обновлять ассоциативный массив (Dictionary) используя SharedOjects?

    Вот код который первый раз отрабатывает нормально, а при повторном запуске вылетает на
    ExpandedWrap disabled
      lso = SharedObject.getLocal("MyCookie");
    и пишет: "Error: Error #2030: Обнаружен конец файла.
    at flash.net::SharedObject$/getLocal()
    at Main()"
    ExpandedWrap disabled
      package  {
          
          import flash.display.MovieClip;
          import flash.utils.Dictionary;
          import flash.net.*;
          
          public class Main extends MovieClip {
              
              public function Main() {
                  // constructor code
                  var lso: SharedObject;
                  var dict: Dictionary;
       
                  // step 1: just creating and storing Dictionary
                  dict = new Dictionary();
                  dict["firstField"] = "value1";
                  dict["secondField"] = "value2";
                  lso = SharedObject.getLocal("MyCookie"); // здесь при воторном запуске вылетает!!!
                  lso.data.dict = dict;
                  lso.flush();
       
                  // step 2: removing one element from Dictionary
                  lso = SharedObject.getLocal("MyCookie");
                  dict = lso.data.dict;
                  delete dict["secondField"];
                  lso.data.dict = dict;
                  lso.flush();
              }
          }
      }


    что же не так?

    P.S. Поведение одинаковое и в CS5 и Flash Builder 4. Да, убрать ошибку можно очисткой SharedObjects в flash player'е (поставить размер 0).
      Может это: http://help.adobe.com/ru_RU/AS3LCR/Flex_4.0/flash/net/SharedObject.html?allClasses=1#includeExamplesSummary поможет?
        Цитата
        Может это: http://help.adobe.com/ru_RU/AS3LCR/Flex_4....ExamplesSummary поможет?
        r сожалению нет, в этой статье сохраняется одно единственное значение простого типа, а не словарь.

        хахаха, попробовал в своём примере изменить Dictionary на Array - и всё заработало! :)
        Сообщение отредактировано: Tkashey -
        0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
        0 пользователей:


        Рейтинг@Mail.ru
        [ Script execution time: 0,0503 ]   [ 15 queries used ]   [ Generated: 19.04.24, 11:59 GMT ]