ActionScript AVM2 В пакете avm2.intrinsics.memory отсутствуют функции

У меня есть файл SWF, и я декомпилировал его. И я получаю FLA и как файлы, я пытаюсь запустить эти файлы, но я получаю эти ошибки

1180: Call to a possibly undefined method li8.
1180: Call to a possibly undefined method li8.
1180: Call to a possibly undefined method li8.
1180: Call to a possibly undefined method si32.
1180: Call to a possibly undefined method li8.
1180: Call to a possibly undefined method li8.
1180: Call to a possibly undefined method li8.
1180: Call to a possibly undefined method li8.
1180: Call to a possibly undefined method si8.

и эти функции должны быть в avm2.intrinsics.memory этого пакета, но его не существует. Я пытался изменить версии SDK AIR 3.5, 3.6, которые входят в этот пакет, 3.7 и некоторые другие, но не из них в качестве этих функций. В чем проблема

1 ответ

Проверьте, используете ли вы ASC2.0 компилятор.

Быстрая память код операции является частью ASC2.0 компилятор и не является частью AIR SDK, В зависимости от того, какую IDE вы используете, avm2.intrinsics.memory методы кода операции могли бы показать unresolved error в редакторе кода, но он будет хорошо работать с ASC2.0 компилятор.

Следующий код протестирован с AIR SDK 27 в intelliJ IDEA,

package {

import flash.display.Sprite;

import avm2.intrinsics.memory.sf64;
import avm2.intrinsics.memory.lf64;

import flash.system.ApplicationDomain;
import flash.utils.ByteArray;
import flash.utils.Endian;

public class FastMemTest extends Sprite {
  public function FastMemTest() {
    var ba:ByteArray = new ByteArray();
    ba.length = ApplicationDomain.MIN_DOMAIN_MEMORY_LENGTH;
    ba.endian = Endian.LITTLE_ENDIAN;
    ApplicationDomain.currentDomain.domainMemory = ba;

    const addr:int = 0xf0;
    const value:int = 1234;
    sf64(1234, value);
    trace(value.toString(16), ':', lf64(value));
  }
}
}

вывод трассировки:

"C:\Program Files\JetBrains\IntelliJ IDEA 2017.2.1\jre64\bin\java.exe" "-Dapplication.home=C:\FlexSDK\AIRSDK_Compiler_27.0.0.132" -Dfile.encoding=UTF-8 -Djava.awt.headless=true -Duser.language=en -Duser.region=en -Xmx512m -classpath "C:/FlexSDK/AIRSDK_Compiler_27.0.0.132/lib/legacy/fdb.jar" flex.tools.debugger.cli.DebugCLI
Adobe fdb (Flash Player Debugger) [build development]
Copyright (c) 2004-2007 Adobe, Inc. All rights reserved.
Waiting for Player to connect
"C:\FlexSDK\AIRSDK_Compiler_27.0.0.132\bin\adl.exe" -profile extendedDesktop C:\test\Stage3DTest-app.xml C:\test
Player connected; session starting.

[trace] f0 : 1234
Другие вопросы по тегам