我不知道我理解你的問題,但似乎你需要改變傳遞給加載方法的url。它也似乎是你的SWF是ActionScript 2.0。
反編譯器的工作類型,但您可以使用反編譯器生成的fla文件很少用於生成相同的swf。有時代碼是非法的,幾乎總是圖形被擰緊。
我曾經做過一些簡單的代碼更改(如更改一些網址和其他簡單的東西)到一個swf,我們沒有源代碼(他們丟失了,沒有備份...)。
我用這個flasm它工作得很好(也不像我第一次假設那麼辛苦)。
Flasm不是反編譯器,而是反彙編器。它需要你的swf,解析動作字節碼,並生成一個類似彙編代碼的文本文件。您可以編輯該代碼並重新組裝swf。它不會觸及圖形和動畫,所以這是我需要的,也許可以爲你工作。
我做了一個小測試,它工作正常。
我開始使用此代碼在FLA:
var xml:XML = new XML();
xml.ignoreWhite = true;
xml.onLoad = function(ok:Boolean):Void {
if(ok) {
_debug_txt.text = "ok";
_debug_txt.text = xml;
} else {
_debug_txt.text = "error";
}
};
xml.load("/sub/page/dynamic.php");
接下來,我打開一個命令提示符(我在Windows上),cd到包含SWF和運行目錄:
flasm -d test_flasm.swf > test_flasm.flm
這將swf分解爲文本文件test_flasm.flm。我在我的可執行文件路徑中添加了flasm,但是您可以使用flasm.exe的完整路徑。
的.flm文件的相關部分看起來是這樣的:
setMember
push '/sub/page/dynamic.php', 1, 'xml'
getVariable
push 'load'
callMethod
此致可能會有所不同,但如果您要查找的網址,你會發現它。其次,改變了網址:
setMember
push 'test.xml', 1, 'xml'
getVariable
push 'load'
callMethod
然後,我用重組的SWF:
flasm -a test_flasm.flm
而現在,test_flasm.swf負荷 「的test.xml」,而不是「/分/頁/動態.PHP」。
希望這會有所幫助。