После переезда сервера надо было поменять некоторые ссылки. В том числе и во одном флеш ролике. Это несложно, но надо иметь софт. А такой софт обычно стоит денег. Что же делать?
Я использовал утлиту flasm. Она бесплатная и есть в репозитороии Debiana. Даже в Lenny. Ставимapt-get install flasm
Затем этой утлитой распаковываем swf
flasm -x test.swf
Получаем бинарник. Ссылка хранится теперь в файле plain текстом. Тут можно уже поменять простым редактором.
Собираем назад
flasm -z test.swf
Flasm 1.62 build Apr 26 2008
(c) 2001 Opaque Industries, (c) 2002-2007 Igor Kogan, (c) 2005 Wang Zhen
All rights reserved. See LICENSE.TXT for terms of use.
Usage: flasm [command] filename
Commands:
-d Disassemble SWF file to the console
-a Assemble Flasm project (FLM)
-u Update SWF file, replace Flasm macros
-b Assemble actions to __bytecode__ instruction or byte sequence
-z Compress SWF with zLib
-x Decompress SWF
Ну или напишем скрипт, например на питоне (спасибо коллеге за идею):
#!/usr/bin/python
import os
OLD = 'https://192.168.1.27/test.cgi'
NEW = 'https://192.168.1.17/test.cgi'
assert len(OLD) == len(NEW)
with open('test.swf','rb') as f:
d = f.read()
q=d.replace(OLD, NEW)
with open('test.modified.swf','wb') as f:
f.write(q)
No comments:
Post a Comment