Zurück   Flashforum > Flash > Flash Fortgeschritten > Flash 8

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 16-10-2005, 20:55   #1 (permalink)
LiquidFrames
 
Registriert seit: Jun 2003
Beiträge: 412
fehler:Branch between...exceed

genau:

Zitat:
**Warning** Branch between 40997 and 73769 exceeds 32K span.
:S ich habe etliche zeilen wo einem array objekte zugeordnet werden

so in der art:
ActionScript:
  1. array[102]={name:"la",wert:"li"};

ab 568 zuweisungen fängt er an mit diesem fehler

das array soll aber 2500 elemente erhalten.
weis jemand was dieser fehler genau bemängelt?

edit:

ups, vieleicht wichtig:

in normal as gehts perfekt, erst wenn die zuweisungen in einer klasse stehen meckert er
Hugo1of2 ist offline   Mit Zitat antworten
Alt 16-10-2005, 20:58   #2 (permalink)
nerdig working
 
Benutzerbild von michael
 
Registriert seit: Jul 2001
Ort: Hamburg
Beiträge: 5.832
hmm ich meine in erinnerung zu haben das scripte (klassen)
nicht größer als 32KB sein dürfen.
gehe ich recht in der annahme das du ein extrem
langes script compilieren willst?
michael ist offline   Mit Zitat antworten
Alt 16-10-2005, 21:01   #3 (permalink)
nerdig working
 
Benutzerbild von michael
 
Registriert seit: Jul 2001
Ort: Hamburg
Beiträge: 5.832
nachtrag:

daran erinnerte ich mich:
bytecode limit?? :-(

die fehlermeldung ist zwar eine andere, aber vieleicht das gleiche problem?
michael ist offline   Mit Zitat antworten
Alt 16-10-2005, 21:10   #4 (permalink)
helpQLODhelp
 
Benutzerbild von bokel
 
Registriert seit: Feb 2002
Ort: Köln
Beiträge: 8.505
Yep,
das Problem ist, dass Sprungadressen im SWF-Format auf 32k begrenzt sind und eine Klasse intern ungefähr so aussieht: if Klasse schon definiert, springe hinter die Klassendefinition. Dieser Sprung geht dann nicht mehr, wenn die Klasse zu gross wird.

Wenn es in einem Framescript funktioniert, würde ich es dort lassen. Oder evtl. als externe Datei laden, z.B. als XML.

mfg. r
bokel ist offline   Mit Zitat antworten
Alt 16-10-2005, 21:17   #5 (permalink)
LiquidFrames
 
Registriert seit: Jun 2003
Beiträge: 412
schlecht...sehr schlecht 500kb code sprechen für sich oda?


und wieso funzt es wenn ich es direkt in as mache?

also in ein as file, und include
Hugo1of2 ist offline   Mit Zitat antworten
Alt 16-10-2005, 21:28   #6 (permalink)
poke
 
Registriert seit: Dec 2002
Ort: Iserlohn [NRW]
Beiträge: 2.304
vielleicht ist es einfach deswegen gemacht, damit die Klasse eine Klasse bleibt. Und eine Klasse sollte allgemein bleiben und nicht schon von anfang an voller daten stecken...
pokepika ist offline   Mit Zitat antworten
Alt 16-10-2005, 21:37   #7 (permalink)
helpQLODhelp
 
Benutzerbild von bokel
 
Registriert seit: Feb 2002
Ort: Köln
Beiträge: 8.505
Bei einer Klasse ist es wichtig, dass sie nicht einfach überschrieben wird, zb wenn sie statische Member besitzt. Das kann der Flashuser nicht kontrollieren, deshalb wird es intern so gemacht, wie ich es oben beschrieben habe. Bei einem Framescript ist der User selbst dafür verantwortlich.

Falls dein Code so aussieht
ActionScript:
  1. //...
  2. array[102]={name:"la",wert:"li"};
  3. array[103]={name:"la",wert:"li"};
  4. array[104]={name:"la",wert:"li"};
  5. //...
  6.  
kannst du vielleicht etwas Platz sparen, indem du ihn so schreibst:
ActionScript:
  1. array = [
  2. //...
  3. {name:"la",wert:"li"},
  4. {name:"la",wert:"li"},
  5. {name:"la",wert:"li"},
  6. //...
  7. ]


mfg. r

Geändert von bokel (16-10-2005 um 21:41 Uhr)
bokel ist offline   Mit Zitat antworten
Alt 16-10-2005, 22:32   #8 (permalink)
LiquidFrames
 
Registriert seit: Jun 2003
Beiträge: 412
es handelt sich um 500kb ich müsste es 20mal kleiner machen...hehe

ich habs mit nem include gelöst...

aber das is notfall lösung :S

ich find shice das ich jetzt immer erst im flash file include machen muss.


gerade wenn ich nacher nurnoch mtasc compiliere ein dickes problem...


naja, thx für die vielen antworten nun binsch ein stück klüga
Hugo1of2 ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 22:57 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele