Записки о Flash

getDefinitionNames v. 2.0

Сегодня день обновлений :)
В очередной раз обновился getDefinitionNames. На этот раз сразу до версии 2.0.

Что нового, вы можете узнать по ссылке.


6 comments

6 Comments so far

  1. P48l0 January 29th, 2010 21:15

    Awesome class!!! very useful. MMh… i dont understand anything in your blog because i only can read english or spanish, but the code is very handy!

  2. Daniel March 3rd, 2010 16:32

    Hi there!
    I’m sorry about posting in english, but I have not yet learned your language :D However yahoo’s babelfish translator does it’s best, with translating whole pages in foreign languages for me.

    I like your class a lot, I wanted to write such a class by myself, then makc gave me the link and I again realized that someone already did that job for me. Nice!

    Probably your class has a bug in the Finder. Whenever I tried to parse my SWFs with your class, I got an End Of File Error when reading the instance-table. I added an expression to check wether there’s still data to read or not, so I got it to work.

    Just wanted to let you know this.

    Best Regards from Germany,
    Daniel

  3. etc March 3rd, 2010 16:41

    Thanks, Daniel! I will fix the bug as soon as I find time.

  4. Daniel March 4th, 2010 19:03

    After doing a bit more research, I think I know where the error comes from.
    The abcFile-Docs speak a lot of u30-integers, those are really only 30bits long, so we can’t get them out of the bytearray by reading whole bytes.
    Please correct me if I’m wrong, but it seems you read these u30-ints with your “readASInt”-method, which reads either 8 or 16 bits each time called.
    However I’m not sure if I understand everything of the code, so please ignore if I’m wrong.

    I found a class that could probably help: http://ntt.cc/2008/07/15/bitsreader-read-bits-from-given-bytearray.html

    I’ll try this out tomorrow.

    Best Regards,
    Daniel

  5. Daniel March 9th, 2010 18:35

    Forget what i wrote before, I finally found the problem source after doing several days of research.

    With Flash 10 Adobe introduced a new Variable-Type called Vector. This is found under the MultinamesTable as 0×1D. See this: http://stackoverflow.com/questions/553445/how-do-generics-vector-work-inside-the-avm

    Best Regards,
    Daniel

  6. etc March 9th, 2010 19:20

    Thank You, Daniel! I’ll fix getDefinitionNames as soon as possible.

Leave a reply