Analyse von SWC-Dateien

Status
Nicht offen für weitere Antworten.

Matthias Kannengiesser

Erfahrenes Mitglied
Hi Folks,

Wer schon immer mal wissen wollte, was so in einer SWC-Komponente von Macromedia steckt sollte folgende Schritte durchführen:

1. Die zu analysierende SWC-Datei (z.B. XMLConnector.swc), aus dem Verzeichnis verschieben.

- Ihr findet die Macromedia SWCs im folgenden Verzeichnis:

MACROMEDIA\FLASH 2004\<SPRACHE>\FIRST RUN\COMPONENTS (Windows)

MACROMEDIA FLASH 2004/FIRST RUN/COMPONENTS (MacOS)


- Oder auch hier:

C:\Dokumente und Einstellungen\[Nutzername]\Lokale Einstellungen\Anwendungsdaten\Macromedia\Flash MX 2004\de\Configuration\Components (Windows)

Users/[Nutzername]/Library/Application/Support/Macromedia/Flash MX 2004/de/Configuration/Components (MacOS)

2. Nach dem die SWC-Datei verschoben wurde kann nun die Endung von .swc auf .zip geändert werden.

3. Kann man nun mit Hilfe von WinZip, etc. die ZIP-Datei einsehen!

Hinweis
Wie man sieht handelt es sich bei den SWC-Dateien um nichts anderes als ZIP-Archive, da lohnt es sich auf alle Fälle mal hineinzuschauen!

Wichtig
Besonderheit zu den ASI-Dateien, welche sich in der SWC-Datei befinden. Wer beim analysieren der Dateiinhalte auf das Schlüsselwort intrinsic stösst, sollte sich nicht wundern. Hierbei handelt es sich nicht wirklich um eine Klasse, vielmehr werden in diesen ASI-Dateien die Richtlinien der Typisierung für eine Klasse festgelegt. intrinsic erfüllt somit lediglich eine Aufgabe, nämlich die Festlegung von Datentypen einer vorhandenen Klasse!

Beispiel - ASI-Datei für die Atome.as:

Code:
intrinsic class Atome extends MovieClip
{
   public function Atome();
   public var aktivity:Number;   
   public var xpos:Number;
   public var ypos:Number;
   public function tanzen():Void;
};

Beispiel - Atome.as:

Code:
class Atome extends MovieClip {	
	// Eigenschaft
	public var aktivity:Number = 1000;
	public var xpos:Number = 100;
	public var ypos:Number = 100;
	
	// Konstruktor
	function Atome() {}	
	
	// Methode
	function tanzen():Void {
		//...
	}
}

Achtung
Lediglich die ASI-Datei ist direkt einsehbar, die Atome.as Inhalte befinden sich innerhalb der SWF-Datei, welche ebenfalls in der SWC-Datei enthalten ist. Ein direkter Zugriff auf die bet. Klase (im Beispiel Atome) ist somit nicht möglich!

Be inspired!

Liebe Grüsse
Matze K.
 
Status
Nicht offen für weitere Antworten.
Zurück