рдлрд╝реНрд▓реИрд╢ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ "рд╕реБрд░рдХреНрд╖рд┐рдд" рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ



рдирдорд╕реНрддреЗ рдореИрдВ рдлреНрд▓реИрд╢-рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдХреЛрдб рдЕрдиреБрд╕рдВрдзрд╛рди, рдзреЛрдЦрд╛рдзрдбрд╝реА рдФрд░ рдЪреЛрд░реА рд╕реЗ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рддрд░реАрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛, рд╕рд╛рде рд╣реА рд╕рд╛рде рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдХреЛ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдЕрдм рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдХрдИ рдЙрддреНрдХреГрд╖реНрдЯ рдкреНрд░рд╕реНрддреБрддрд┐рдпрд╛рдВ рдФрд░ рдХрд╛рд░реНрдп рд╣реИрдВ (рд▓реЗрдЦ рдХреЗ рдЕрдВрдд рдореЗрдВ рд▓рд┐рдВрдХ рджреЗрдЦреЗрдВ), рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВ рдХреБрдЫ рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдХрд╛ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрди рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛, рдФрд░ рдПрдХ рд╕реНрдерд╛рди рдкрд░ рд╡рд┐рд╖рдп рдкрд░ рдмрд╣реБрдд рд╕рд╛рд░реА рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░реВрдВрдЧрд╛ред рдХрдо рд╕реЗ рдХрдо рдореИрдВ рдЗрд╕реЗ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ред



рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╕рднреА рдЪреАрдЬреЗрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд▓рд╛рдн, рдХреЙрдкреАрд░рд╛рдЗрдЯ рдХреЗ рдЙрд▓реНрд▓рдВрдШрди, рд▓рд╛рдЗрд╕реЗрдВрд╕ рд╕рдордЭреМрддреЛрдВ рдФрд░ рдХрд┐рд╕реА рднреА рджреЗрд╢реЛрдВ рдХреЗ рдХрд┐рд╕реА рднреА рдХрд╛рдиреВрди рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред рдХреЛрдИ рд╡рд┐рдЬреНрдЮрд╛рдкрди рдирд╣реАрдВ рд╣реИ, рд╕рдм рдХреБрдЫ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдУрдВ рдФрд░ рдЕрдиреБрднрд╡ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдЙрджрд╛рд╣рд░рдг рдХреЗрд╡рд▓ рддреНрд╡рд░рд┐рдд рдЙрджрд╛рд╣рд░рдг рд╣реИрдВ, рдЗрд╕реЗ рдпрд╛рдж рд░рдЦреЗрдВред




- рдкрд░рд┐рдЪрдп



рдлреНрд▓реИрд╢ рдХреА рджреБрдирд┐рдпрд╛ рдореЗрдВ (рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рд╣рдо рдЧреНрд░рд╛рд╣рдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ) рдШреБрд╕рдкреИрдард┐рдпреЛрдВ рдХреЗ рдЦрд┐рд▓рд╛рдл рдХреЛрдИ рд╕реБрд░рдХреНрд╖рд╛ рдХреА рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рд╣реИ; рдЖрдк рдХреЗрд╡рд▓ рдЕрд╢реБрдн рд▓реЛрдЧреЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХреЛ рдЬрдЯрд┐рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд╕рднреА рддрд░рд╣ рд╕реЗ рдЬрд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдмреАрдорд╛рд░-рдЗрдЪреНрдЫрд╛рдзрд╛рд░реА рдХреА рд▓рд╛рдЧрдд рдФрд░ рд╕рдордп рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ, рдФрд░ рдЖрдкрдХреА рд▓рд╛рдЧрддреЗрдВ - рдЙрддрдиреА рд╣реА рдХрдо рд╣реЛред рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ, рдЕрдкрдиреА рдмрд╛рдзрд╛рдУрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦрд░реЛрдВрдЪ рд╕реЗ рдХрд┐рд╕реА рд╣рдорд▓рд╛рд╡рд░ рдХреЛ рдЦрд░реАрджрдирд╛ рдпрд╛ рд▓рд┐рдЦрдирд╛ рдЖрд╕рд╛рди, рддреЗрдЬрд╝ рдФрд░ рд╕рд╕реНрддрд╛ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред



рд╕рдВрд░рдХреНрд╖рдг рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдФрд░ рдмрд╛рдИрдкрд╛рд╕ / рдбрд┐рдкреНрд░реЛрдЯреЗрд╢рди рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдмреАрдЪ рд╕рдВрдШрд░реНрд╖ рдЬрд╛рд░реА рд╣реИред рдпрд╣ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдХреЛрдИ рднреА рд╡реНрдпрдХреНрддрд┐ рдЬреЛ SWF рдкреНрд░рд╛рд░реВрдк рдФрд░ рдмрд╛рдЗрдЯрдХреЛрдб ( рдпрд╣рд╛рдВ , рдпрд╣рд╛рдВ рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐) рдХреЗ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рддрдХ рдкрд╣реБрдВрдЪ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ ActionScript3 (рдЗрд╕рдХреЗ рдмрд╛рдж AS3) рдХреЛрдб рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдФрд░ рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдШрдЯрдХреЛрдВ (рдЧреНрд░рд╛рдлрд┐рдХреНрд╕, рдзреНрд╡рдирд┐рдпреЛрдВ, рдмрд╛рдЗрдЯрдХреЛрдб, рдЖрджрд┐) рдореЗрдВ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрддрд╛ рд╣реИ, рдФрд░ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдмрд╛рдЗрдЯрдХреЛрдб рдХреЗ рд╕рд╛рде рдХреБрдЫ рднреА рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ:

рд╕рдВрд░рдХреНрд╖рдг рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ, рдЕрд▓рдЧ-рдЕрд▓рдЧ рд▓рдХреНрд╖реНрдп рдФрд░ рд╕рд╛рдзрди рд╣реИрдВред рдХреЗрд╡рд▓ рд╡рд╣реА рдЪреБрдиреЗрдВ рдЬреЛ рдЖрдкрдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИ, рдЕрдирд╛рд╡рд╢реНрдпрдХ рдХрд╛рдо рди рдХрд░реЗрдВред





- рд╕рд╛рдордЧреНрд░реА



рд╣рдо рдХрдИ рддрд░реАрдХреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ (рд╡реЗ рди рдХреЗрд╡рд▓ рдЙрдирдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ, рдмрд▓реНрдХрд┐ рдЙрдирдХреЗ рдЗрдЪреНрдЫрд┐рдд рдЙрджреНрджреЗрд╢реНрдп рдореЗрдВ рднреА рд╣реИрдВ) рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдХреЛ рджрд░рдХрд┐рдирд╛рд░ рдХрд░рдиреЗ рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдХрдИ рдЙрдкрдХрд░рдг рднреА рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рдкрд░реАрдХреНрд╖рд╛ (рдЖрдкрдХреЗ) рдХреЛрдб рдХрд░рддреЗ рд╕рдордп рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

  1. рдпреВрдЖрд░рдПрд▓-рд▓реЙрдХ (рдПрдХ рдпрд╛ рдХрдИ рдбреЛрдореЗрди рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдпрдХрд╛рд░реА), рд╕реНрдерд╛рдиреАрдп рд▓реЙрдиреНрдЪ рдХреЗ рдЦрд┐рд▓рд╛рдл рд╕реБрд░рдХреНрд╖рд╛
  2. рдЪрд░, рд╕рдВрд╕рд╛рдзрди рдФрд░ рд╡рд░реНрдЧ
  3. рд╡реЙрдЯрд░рдорд╛рд░реНрдХ (рд╡рд╛рдЯрд░рдорд╛рд░реНрдХ)
  4. SWF рдкреИрдХрд┐рдВрдЧ
  5. рдбрд╛рдпрдирд╛рдорд┐рдХ рдХреЛрдб рдЬреЗрдирд░реЗрд╢рди рдФрд░ SWF рдПрдбрд┐рдЯрд┐рдВрдЧ
  6. рдХреЛрдб рдСрдмреНрд╕рдлреИрдХреНрд╢рди рдФрд░ рдбреЗрдЯрд╛ рдЫрд┐рдкрд╛рдирд╛
  7. рдореЗрдореЛрд░реА рд╕реЗ SWF рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рд╕реЗ рд╕реБрд░рдХреНрд╖рд╛
  8. рдлреНрд▓реИрд╢ рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдЯреВрд▓рдХрд┐рдЯ


- 1. рдЖрдИрдкреА-рд▓реЙрдХ, рд╕реНрдерд╛рдиреАрдп рд▓реЙрдиреНрдЪ рдХреЗ рдЦрд┐рд▓рд╛рдл рд╕реБрд░рдХреНрд╖рд╛



рд▓рдХреНрд╖реНрдп SWF рдлрд╝рд╛рдЗрд▓ рдХреЛ рдХреБрдЫ рд╢рд░реНрддреЛрдВ рдХреЗ рддрд╣рдд рдХрд╛рдо рдХрд░рдирд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреЗрд╡рд▓ рдПрдХ рдпрд╛ рдЕрдзрд┐рдХ рдбреЛрдореЗрди рдХреЗ рддрд╣рдд, рдпрд╛ рд╕реНрдерд╛рдиреАрдп рд▓реЙрдиреНрдЪ рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред

рдЗрд╕ рддрдереНрдп рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдХрд┐ рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдХреЛ рд▓реЙрдиреНрдЪ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдпрд╣ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЖрдк рдЕрдкрдиреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдЕрдкрдиреА рдкрд╕рдВрдж рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рд╕рд░реНрд╡рд░ рдХреЛ рдЕрд╡рд╛рдВрдЫрд┐рдд рдбреЛрдореЗрди \ URL рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ (рдпрджрд┐ рдпрд╣ рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ рдирд╣реАрдВ рд╣реИ) рдФрд░ рдЙрдиреНрд╣реЗрдВ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓реЙрдЧ рдореЗрдВ рджрд░реНрдЬ рдХрд░реЗрдВред

рдореВрд▓ рдбреЛрдореЗрди (рдЬрд┐рд╕рдХреЗ рддрд╣рдд SWF рдлрд╝рд╛рдЗрд▓ рдХреЛ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП) рдХреЛ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рд░реВрдк рдореЗрдВ рдпрд╛ рдХреНрд▓рд╛рдЗрдВрдЯ рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рд░рдЦрдирд╛ рдмреЗрд╣рддрд░ рд╣реИ (рд╕рд░реНрд╡рд░ рд╕реЗ рднреА рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рд░реВрдк рдореЗрдВ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ)ред

рдЖрдЗрдП рдбреЛрдореЗрди рдХреЛ рдмрд╛рдВрдзрдиреЗ рдФрд░ рд╕реНрдерд╛рдиреАрдп рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рдХреБрдЫ рддрд░реАрдХреЗ рджреЗрдЦреЗрдВред



рд╡рд░реНрддрдорд╛рди URL \ domain рдкреНрд░рд╛рдкреНрдд рдХрд░рдХреЗ рдбреЛрдореЗрди рд╕реЗ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ



рдХрд┐рд╕реА рдбреЛрдореЗрди рд╕реЗ рдЬреБрдбрд╝рдиреЗ рдХрд╛ рдпрд╣ рд╕рдмрд╕реЗ рдЖрдо рддрд░реАрдХрд╛ рд╣реИред рдЖрдорддреМрд░ рдкрд░ рд╡рд░реНрддрдорд╛рди URL рдпрд╛ рдбреЛрдореЗрди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:



a) рд▓реЛрдбрд░рдЗрдиреНрдлреЛ :

рдпрджрд┐ рдЖрдк SWF рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рдЧреИрд░-рджреЗрд╢реА рдбреЛрдореЗрди рдкрд░ рдПрдХ HTML рдкреГрд╖реНрда рдореЗрдВ SWF рдПрдореНрдмреЗрдб рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдкрде рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдирд╣реАрдВ рд╣реЛрдВрдЧреЗред



b) рд▓реЛрдХрд▓ рдХреЙрдирдХреНрд╢рди : рдЖрдкрдХреЛ рдЙрд╕ рдбреЛрдореЗрди рдХрд╛ рдирд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рддрд╣рдд SWF рдлрд╝рд╛рдЗрд▓ рд╡рд░реНрддрдорд╛рди рдореЗрдВ LocalConnection.domain



рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЪрд▓ LocalConnection.domain



ред

рдпрджрд┐ рд╡рд┐рджреЗрд╢реА SWF рдЖрдкрдХреЗ SWF рдХреЗ рдбреЛрдореЗрди рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдбреЛрдореЗрди рдореЗрдВ рд╣реИ, рдФрд░ рдЖрдкрдиреЗ рдЙрд╕ SWF рдХреЛ рд╡рд░реНрддрдорд╛рди рд╕реБрд░рдХреНрд╖рд╛ рдбреЛрдореЗрди рдЬреИрд╕реЗ:

 var context:LoaderContext = new LoaderContext(true); context.securityDomain = SecurityDomain.currentDomain; loader.load(new URLRequest(url), context);
      
      



рдпрд╛ Loader.loadBytes



рдХрд╛ рдЙрдкрдпреЛрдЧ Loader.loadBytes



, рдлрд┐рд░ рд▓реЛрдб рдХрд┐рдП рдЧрдП SWF рдХреЗ LocalConnection.domain



рдореЗрдВ рдЖрдкрдХреЗ SWF рдХрд╛ рдбреЛрдореЗрди рд╣реЛрдЧрд╛ред

рдпрджрд┐ рдЖрдк SWF рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рдЧреИрд░-рджреЗрд╢реА рдбреЛрдореЗрди рдкрд░ рдПрдХ HTML рдкреГрд╖реНрда рдореЗрдВ SWF рдПрдореНрдмреЗрдб рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдкрде рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдирд╣реАрдВ рд╣реЛрдВрдЧреЗред



c) рдПрдХреНрд╕рдЯрд░реНрдирд▓рдЗрдВрдЯрд░рдлреЗрд╕ : рдЖрдкрдХреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ (рдЗрд╕рдХреЗ рдмрд╛рдж JS) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡рд░реНрддрдорд╛рди рдкреГрд╖реНрда рдХрд╛ рд░рд╛рд╕реНрддрд╛ рдЬрд┐рд╕рдореЗрдВ SWF рдПрдореНрдмреЗрдбреЗрдб рд╣реИ, window.location.href



рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред JS рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, ExternalInterface.call



рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдХреНрдпреЛрдВрдХрд┐ рдкрд╣рд▓реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХреЙрд▓ рд╡рд┐рдзрд┐ рдХрд╛ рдирд╛рдо рд▓реЗрддрд╛ рд╣реИ, рдФрд░ window.location.href



рд╕рдВрдкрддреНрддрд┐ рд╣реИ, рдлрд┐рд░ рд╕реНрдЯреНрд░рд┐рдВрдЧ () рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:

 var myHTMLUrl:String = ExternalInterface.call("window.location.href.toString");
      
      



рд╡реИрд╕реЗ, рдбреЛрдореЗрди рдХреЛ ExternalInterface.call



рдорд╛рдзреНрдпрдо рд╕реЗ рднреА рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

 var domain:String = ExternalInterface.call ("eval", "document.domain");
      
      





рдмрд╛рд╣рд░реА рдЗрдиреНрд╡рд░реНрдЯрдлреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдкрдХреЗ рдЬреЗрдПрд╕ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЙрд╕ рдкреЗрдЬ рдкрд░ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ SWF рд╕реНрдерд┐рдд рд╣реИ - рджреЛрдиреЛрдВ рдореМрдЬреВрджрд╛ рдФрд░ рд╕реНрд╡рдпрдВ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдП рдЧрдП:

 var customJavaScriptCode:String = "function customJS(){alert('Yes, this is a custom JS');}"; ExternalInterface.call("eval", customJavaScriptCode); ExternalInterface.call("customJS");
      
      



рдФрд░ рдпрд╣ рдордд рднреВрд▓реЛ рдХрд┐ рдЗрд╕ рдкрджреНрдзрддрд┐ рдХреЛ рдЬреЗрдПрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреЛ рд╣рдореЗрд╢рд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИред

рдпрджрд┐ рдЖрдк SWF рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рдПрдХ рдЧреИрд░-рджреЗрд╢реА рдбреЛрдореЗрди рдкрд░ HTML рдкреГрд╖реНрда рдореЗрдВ рдПрдореНрдмреЗрдбрд┐рдВрдЧ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдмрд╛рд╣рд░реАрдЗрдВрдЯрд░рдлреЗрд╕.рдХреЙрд▓ рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рдПрдХ SecurityError рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧрд╛ред



d) FlashVars : рдХрднреА-рдХрднреА, HTML рдкреЗрдЬ рдореЗрдВ SWF рд░рдЦрддреЗ рд╕рдордп рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп SWF рд╕реЗ рд▓реЛрдб рдХрд░рддреЗ рд╕рдордп, рд╡реЗ FlashVars рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбреЛрдореЗрди рдФрд░ / рдпрд╛ рдЕрдиреНрдп рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рдкрде рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ (рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмреБрд░рд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рд╕реНрдкрд╖реНрдЯ "рдЫреЗрдж" рд╣реИ рдЬреЛ рдбрд┐рдХреЙрдЙрдкрд┐рдВрдЧ рд╕реЗ рд╣реИ рдбреЛрдореЗрди):



FlashVars рдХреЛ рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:


 <object ...> <param name="FlashVars" value="var1=value1&var2=value2" /> </object>
      
      



рдпрд╛ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ:
 <object ...> <param name="movie" value="somecoolmovie.swf? var1=value1&var2=value2" /> </object>
      
      



рдЖрдк рдЗрд╕ рддрд░рд╣ FlashVars рддрдХ рдкрд╣реБрдБрдЪ рд╕рдХрддреЗ рд╣реИрдВ:

- AS3 рдореЗрдВ - root.loaderInfo.parameters.var1





- AS2 рдореЗрдВ - _root.var1







рд╡рд░реНрддрдорд╛рди URL рдпрд╛ рдбреЛрдореЗрди рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдП рдмрд┐рдирд╛ рдбреЛрдореЗрди рд╕реЗ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ



рдпрд╣ рд╡рд┐рдзрд┐ рдПрдХ рдХреНрд░реЙрд╕-рдбреЛрдореЗрди рд╕реБрд░рдХреНрд╖рд╛ рдиреАрддрд┐ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░ рдмрд╛рдзреНрдп SWF рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реЛрд╕реНрдЯ рд╕реЗ "рд╡рд┐рд╢реЗрд╖" рдбрдореА рдлрд╝рд╛рдЗрд▓ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ crossdomain.xml рдлрд╝рд╛рдЗрд▓ рдХреЗрд╡рд▓ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдбреЛрдореЗрди рд╕реЗ рд╕рдВрд╕рд╛рдзрди рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдХреЗ рд╕рд╛рде рд╕реНрдерд┐рдд рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдПрдХ рдкрд░ SWF рд╕реНрдерд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рддрджрдиреБрд╕рд╛рд░, рдпрджрд┐ "рдЪреЛрд░реА" рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдлрд╝рд╛рдЗрд▓ рдХреНрд░реЙрд╕рдбреЛрдореИрди.рдПрдХреНрд╕рдПрдордПрд▓ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдбреЛрдореЗрди рд╕реЗ "рд╡рд┐рд╢реЗрд╖" рдлрд╝рд╛рдЗрд▓ рддрдХ рдкрд╣реБрдВрдЪрддреА рд╣реИ, рддреЛ рд╕реИрдВрдбрдмреЙрдХреНрд╕ рд╕реБрд░рдХреНрд╖рд╛ рдЙрд▓реНрд▓рдВрдШрди рд╣реЛрдЧрд╛ рдФрд░ "рд╡рд┐рд╢реЗрд╖" рдлрд╝рд╛рдЗрд▓ рд▓реЛрдб рдирд╣реАрдВ рд╣реЛрдЧреАред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдХ рдЕрдкрд╡рд╛рдж рдлреЗрдВрдХрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ SecurityErrorEvent.SECURITY_ERROR



рдЗрд╡реЗрдВрдЯ рдХреЛ LoaderInfo рд╡рд░реНрдЧ ( Loader.contentLoaderInfo



) рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП Loader.contentLoaderInfo



рдЧрдпрд╛ рд╣реИред рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдЧрд╛ рдХрд┐ рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рд╡рд╣ рдирд╣реАрдВ рд╣реИ рдЬрд╣рд╛рдВ рдпрд╣ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

"рд╡рд┐рд╢реЗрд╖" рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЙрд╕рдХреЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реАрдзреЗ рддрд░реАрдХреЗ рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред



рд╕реНрдерд╛рдиреАрдп рдЯреНрд░рд┐рдЧрд░ рдкрд░рд┐рднрд╛рд╖рд╛



рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдпрд╛ рдПрдЪрдЯреАрдПрдордПрд▓ рдХреА рдПрдХ рд▓рд┐рдВрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░рдХреЗ рдФрд░ рдЗрд╕реЗ рд╕рдмреНрд╕реНрдХреНрд░рд╛рдЗрдмреНрдб "рдлрд╝рд╛рдЗрд▓ //" рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХрд░рдХреЗ рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдХрд╛ рд╕реНрдерд╛рдиреАрдп рд▓реЙрдиреНрдЪ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдпрджрд┐ SWF HTML рдХреЗ рдмрд╛рд╣рд░ рдЪрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ ExternalInterface.call



рд╡рд┐рдзрд┐ рд╢реВрдиреНрдп рд╣реЛ рдЬрд╛рдПрдЧреАред

рдЖрдк рдПрдлрдкреА рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреА рднреА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ SWF Capabilities.playerType



рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЪрд▓рддрд╛ рд╣реИ:

рджреВрд╕рд░рд╛ рддрд░реАрдХрд╛ Security.sandboxType



рдХреА Security.sandboxType



рд╕реЗ рддреБрд▓рдирд╛ рдХрд░рдХреЗ рд╣реИред



рдЗрди рд╕рднреА рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдЕрдкрдиреЗ рдлрд╛рдпрджреЗ рдФрд░ рдиреБрдХрд╕рд╛рди рд╣реИрдВ - рдХреБрдЫ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдбреЛрдореЗрди рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП SWF рдлрд╝рд╛рдЗрд▓ рдХреЛ рдлрд┐рд░ рд╕реЗ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдпрдХрд╛рд░реА рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдХреБрдЫред

рд▓реЗрдЦ рдХреЗ рдХреЛрдб рдореЗрдВ (рд╕рдВрдЧреНрд░рд╣ рдХрд╛ рдПрдХ рд▓рд┐рдВрдХ рд▓реЗрдЦ рдХреЗ рдЕрдВрдд рдореЗрдВ рд╣реИ), "1-URL рд▓реЙрдХ" рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ, рдЖрдкрдХреЛ рд╡рд░реНрдгрд┐рдд рдХреБрдЫ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рд╛рде рдПрдХ рдЙрджрд╛рд╣рд░рдг рдорд┐рд▓реЗрдЧрд╛ рдФрд░ рддрд░реАрдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд▓рд┐рдП рдкреИрдЪ рдХреЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдгред

рдЪреЗрддрд╛рд╡рдиреА! рдЕрдзрд┐рдХрд╛рдВрд╢ URL- рд▓реЙрдХ рдЯреНрд░рд┐рдХ рдХреЛ рдбреЗрдирд╡рд░ рдпрд╛ XAMPP рдЬреИрд╕реЗ рд╕реНрдерд╛рдиреАрдп рд╕рд░реНрд╡рд░ рдХреЗ рддрд╣рдд рдХрд╛рдо рдХрд░рдХреЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред





- 2. рдЪрд░, рд╕рдВрд╕рд╛рдзрди рдФрд░ рд╡рд░реНрдЧ



рдЧреЗрдо рд▓рд┐рдЦрддреЗ рд╕рдордп рдЖрдорддреМрд░ рдкрд░ рдЪрд░ рдФрд░ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдзреНрдпрд╛рди рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред рдмреЗрд╢рдХ, рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рдмрд╛рд╣рд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рддрд░реНрдХ, рдбреЗрдЯрд╛ рдФрд░ рдЪрд░ рд░рдЦрдирд╛ рдмреЗрд╣рддрд░ рд╣реИ, рд▓реЗрдХрд┐рди, рдЕрдлрд╕реЛрд╕, рдпрд╣ рд╣рдореЗрд╢рд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП, рдХрднреА-рдХрднреА рдЖрдкрдХреЛ рдпрд╣ рд╕реЛрдЪрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдШреЛрдЯрд╛рд▓реЗ рдХреЗ рд▓рд┐рдП рдЦрд╛рдорд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХреИрд╕реЗ рдХрдо рдХрд┐рдпрд╛ рдЬрд╛рдПред

рд╡реЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдФрд░ рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдХреНрд╕рд░ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрднреА рднреА рдЙрдиреНрд╣реЗрдВ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЖрдкрдХреЛ рдпрд╣ рдмрддрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рд╡реЗ рдЗрд╕реЗ рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЖрдк рдЗрд╕реЗ рдХреИрд╕реЗ рд░реЛрдХ рд╕рдХрддреЗ рд╣реИрдВ (рдЗрд╕рд╕реЗ рдЦреБрдж рдХреЛ рдмрдЪрд╛рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИ)ред



рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рд╕рдВрд░рдХреНрд╖рдг



рдЪрд░ рдХреЛ рдЫрд┐рдкрд╛рдиреЗ рдФрд░ рдкрд░рд┐рд╡рд░реНрддрди рд╕реЗ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЫрд┐рдкрд╛рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рдЖрдзрд╛рд░ рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд░реИрдкрд░ рд▓рд┐рдЦрдирд╛ рд╣реИред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, CryptInt, CryptString, рдЖрджрд┐ред рд╕реНрд╡рдпрдВ рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ, рдЖрдк рдПрдХ рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдФрд░ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрд░реАрдХреЗ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕реЗ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдпрд╛ рдбрд┐рдХреНрд░рд┐рдкреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдореЗрдореЛрд░реА рдореЗрдВ рдЪрд░ рдХреЛ рдЫрд┐рдкрд╛рдПрдЧрд╛ред "2-рдореИрдореЛрд░реА рдПрдВрдб рдбреЛрдореЗрди \ рдореИрдореЛрд░реАрдПрдХреНрд╕рдкреНрд▓рд┐рдореЗрдВрдЯ" рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдореЗрдВ рдХреНрд░рд┐рдкреНрдЯрд╛рдЗрдВрдЯ рдФрд░ рдХреНрд░рд┐рдкреНрдЯреНрд░реАрд╕реНрдЯреНрд░рд┐рдВрдЧ рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЪрд░ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдЫрд┐рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдЙрдиреНрд╣реЗрдВ рдШрдЯрдХреЛрдВ, рдорд┐рд╢реНрд░рдг, рдмрджрд▓рд╛рд╡ рдЖрджрд┐ рдореЗрдВ рддреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд▓рд┐рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ GC (рдЧрд╛рд░рдмреЗрдЬ рдХрд▓реЗрдХреНрдЯрд░) рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЪрд░ рдХреЛ рдореБрдХреНрдд рдХрд░рддреЗ рд╣реБрдП рдЫрд┐рдкреЗ рд╣реБрдП рдореВрд▓реНрдп рдХреЛ рдПрдХ рдЪрд░ рд╕реЗ рджреВрд╕рд░реЗ рдЪрд░ рдореЗрдВ рд▓реЗ рдЬрд╛рдПрдЧреАред рдмрд╛рдЗрдЯрдПрд░реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдРрд╕реЗ рдкреБрдирд░рд╛рд╡рд░реНрддрдиреАрдп рдЪрд░ рдХреЗ рд▓рд┐рдП "рдЕрд╕реНрдерд╛рдпреА рднрдВрдбрд╛рд░рдг" рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╕рдВрднрд╡рддрдГ "рдЕрд▓реНрдХреЗрдореА" рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде (рдПрдЬрд╝реЛрде рд╕реЗ рдлрд╛рд╕реНрдЯрдореЗрдо , рдПрдкреЗрд░рдЯ рд╕реЗ рдореЗрдореЛрд░реА)ред

рдФрд░ рдЗрддрдирд╛ рд╣реИ рдХрд┐ рдЪрд░ рдирд╣реАрдВ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рднрд▓реЗ рд╣реА рд╡реЗ рдкрд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдЪрд░ рдХреЗ рдорд╛рди рдХреА рддреБрд▓рдирд╛ рд╕рдВрджрд░реНрдн рдХреЗ рд╕рд╛рде рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдХ рдЪрд░ рдХреЛ рдмрджрд▓рдиреЗ рдпрд╛ рдЗрд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдФрд░ рджрд┐рдП рдЧрдП рдЕрдВрддрд░рд╛рд▓ рдкрд░ рджреЛрдиреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред



рд╕рдВрд╕рд╛рдзрди рд╕реНрд╡реИрдк



рдЖрдк рдкреВрд░реЗ SWF рдХреЛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдмрд╛рд╣рд░реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреИрд╢ рдореЗрдВ рд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдПрдХ рдирдХрд▓реА SWF рдлрд╝рд╛рдЗрд▓, рдпрд╛ рдПрдХ рд╕реНрдкреВрдл рд╕рдВрд╕рд╛рдзрди рдореЗрдВ, рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ (рдЖрдХрд╛рд░, рдкрд╛рд░рджрд░реНрд╢рд┐рддрд╛, рд╢рд┐рдлреНрдЯ, рдлреНрд░реЗрдо рджрд░, рдЖрджрд┐) рдФрд░ рдХреЛрдб рдореЗрдВ рдХреЛрдИ рднреА рдмрджрд▓рд╛рд╡ (рдЬреЛ рдЖрдкрдХреЛ рдХрдо рд╕реЗ рдХрдо рдкрд╕рдВрдж рд╣реИ) рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдмреАрдорд╛рд░-рдЗрдЪреНрдЫрд╛рдзрд╛рд░реА рдХреЛ рдХрд╛рд░реНрдп рдХреЛ рдЬрдЯрд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдпрд╣ рдЕрдкрдиреЗ рдЖрдк рдХреЛ рд╕реНрдкреВрдлрд┐рдВрдЧ рд╕реЗ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╕рдВрднрд╡ рд╣реИ), рдЖрдкрдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХреА рдкреНрд░рд╛рдорд╛рдгрд┐рдХрддрд╛ рдФрд░ рдЦреБрдж рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдПрдордбреА 5 рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдмреВрдЯ рдкрд░ рддреБрд▓рдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдПрдордбреА 5 рдХреЛ рдХрд╣реАрдВ рджреВрд░ рдФрд░ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рд░реВрдк рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдпрджрд┐ SWF рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд░рддрд╛ рд╣реИ - рдЫрд┐рдкреА рд╣реБрдИ рдЬрд╛рдБрдЪ рдХрд░реЗрдВ - рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдЧрдП рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ MD5 рд╕рд░реНрд╡рд░ рдкрд░ рднреЗрдЬреЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдПред



рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ, рддреЛ, рд╕реНрдкреВрдлрд┐рдВрдЧ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╛рд╣рд░реА рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдФрд░ рдЕрдиреНрдп рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдореБрдЦреНрдп рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдХреЗ рд╢рд░реАрд░ рдореЗрдВ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рд░реВрдк рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ Loader.loadBytes



рд╕рд╛рде рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ Loader.loadBytes



, рдЙрдиреНрд╣реЗрдВ рдЦреБрдж рд╕реЗ рд╣рдЯрд╛рдиреЗ рдХреЗ рдмрд╛рджред Loader.loadBytes



рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреИрд╢ рдореЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХреЛ Loader.loadBytes



рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ, рдЖрдкрдХрд╛ рдореБрдЦреНрдп SWF рдХреИрд╢ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ Loader.loadBytes



рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рд▓реЗрдЦ рдХреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд░реНрдЧреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рд▓рд┐рдЦреА рдЧрдИ рд╣реИред

рдЖрдк рд╕рд░реНрд╡рд░ рд╕реЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдФрд░ рдЕрдиреНрдп SWF рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рднреА рдЕрдиреБрд░реЛрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рд░реВрдк рдореЗрдВ рд╣реИрдВ, рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдбрд┐рдХреНрд░рд┐рдкреНрдЯ рдХрд░реЗрдВ рдФрд░ Loader.loadBytes



рдорд╛рдзреНрдпрдо рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВред



рдХрдХреНрд╖рд╛ рдУрд╡рд░рд░рд╛рдЗрдб



рдореИрдВ рддреБрд░рдВрдд рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рд╕реНрд╡рдпрдВ рдХреЛ рдЗрд╕рд╕реЗ рдмрдЪрд╛рдирд╛ рднреА рдЕрд╕рдВрднрд╡ рд╣реИред

ApplicationDomain



рд▓реЛрдбрд░ рдореЗрдВ SWF рд▓рдХреНрд╖реНрдп рд▓реЛрдб рдХрд░рдХреЗ рдХрдХреНрд╖рд╛рдПрдВ рдмрджрд▓реА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдПрдХ рдмреВрдЯрд▓реЛрдбрд░ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рд╣реА рдирд╛рдо рд╡рд╛рд▓рд╛ рдПрдХ рд╡рд░реНрдЧ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдФрд░ рдЕрдкрдиреЗ рдбреЛрдореЗрди рдореЗрдВ SWF рд▓реЛрдб рдХрд░реЗрдВ:

 var appDomain:ApplicationDomain = ApplicationDomain.currentDomain; var swfLoader:Loader = new Loader(); swfLoader.load(new URLRequest('original.swf'), new LoaderContext(false, appDomain));
      
      



рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд▓реЛрдбреЗрдб рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдХреЛ рдЕрдкрдиреЗ рд▓реЛрдбрд░ рд╕реЗ рдХрдХреНрд╖рд╛ рдХреЗ рд╕рд╛рде "рд╕рдВрд╡рд╛рдж" рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЖрдк "2-рдореЗрдореЛрд░реА рдПрдВрдб рдбреЛрдореЗрди \ рдПрдкреНрд▓реАрдХреЗрд╢рдирдбреЛрдореЗрди" рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдПрдХ рдмрдЪреНрдЪреЗ рдХреЛ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдФрд░ рд╡рд╣рд╛рдВ рдЖрдкрдХреЗ рдбреЛрдореЗрди рдкрд░ рдХрдХреНрд╖рд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рдЙрджрд╛рд╣рд░рдг рдорд┐рд▓реЗрдВрдЧреЗред "рдкреАрдбрд╝рд┐рдд" рдореЗрдВ рдЖрдк рднреАрдбрд╝ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рд╡рд┐рдХрд▓реНрдк рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ (рдЬреЛ рдЙрд╕ рд╡рд░реНрдЧ рдХреЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреА рд▓рд╛рдЧрдд рдЬрд┐рд╕рдореЗрдВ рд╡реЗ рдирд┐рд╣рд┐рдд рд╣реИрдВ)ред

рдЖрдк рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд▓реЛрдбрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдореБрдЦреНрдп SWF рдХреЛ рд▓реЛрдб рдХрд░рдХреЗ рдЗрд╕реЗ рд░реЛрдХрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

 var appDomain:ApplicationDomain = new ApplicationDomain(null); var swfLoader:Loader = new Loader(); swfLoader.load(new URLRequest('original.swf'), new LoaderContext(false, appDomain));
      
      



рдФрд░ рдмреВрдЯрд▓реЛрдбрд░ рдФрд░ рдореБрдЦреНрдп SWF рдХреЗ рдмреАрдЪ рдПрдХ рдордЬрдмреВрдд рд╕рдВрдмрдВрдз рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рддрд╛рдХрд┐ рдЙрдиреНрд╣реЗрдВ "рдЕрд▓рдЧ" рдХрд░рдирд╛ рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рд╣реЛред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЕрдЧрд░ рд╡реЗ рдмреВрдЯрд▓реЛрдбрд░ рдХреЛ рдмрджрд▓ рджреЗрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕ рдХрдиреЗрдХреНрд╢рди рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпреЗ рдкреНрд░рдпрд╛рд╕ рд╡реНрдпрд░реНрде рд╣реЛрдВрдЧреЗред



рдХреЗрд╡рд▓ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЪрд░ рдФрд░ рдбреЗрдЯрд╛ рдХреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рд░рдЦреЗрдВ, рддрд░реАрдХреЛрдВ рдХреЛ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░реЗрдВред

рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ рддреЛ, рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЪрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рддрд░реНрдХ рд╕рд░реНрд╡рд░ рдкрд░ рд▓реЗ рдЬрд╛рдПрдВ, рдФрд░ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреЗ рд▓рд┐рдП рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрдВ рдФрд░ рдЬрд╛рдВрдЪ рдХрд░реЗрдВред





- 3. рд╡реЙрдЯрд░рдорд╛рд░реНрдХ



рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рд╕реБрд░рдХреНрд╖рд╛, рдЕрд╡реИрдз рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рд╡рд┐рдЬреНрдЮрд╛рдкрди рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред



рдпрд╣рд╛рдБ рдЙрдирдХреЗ рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ:

  1. рдЙрдЪреНрдЪ рджреГрд╢реНрдпрдорд╛рди рддрддреНрд╡: рдкрд╛рда, рд▓реЛрдЧреЛ, рдЫрд╡рд┐, рдЖрджрд┐ред

    рдпрджрд┐ рд▓реЗрдмрд▓ "рдорд┐рд▓рд╛рдк" рд╣реИ (рдпрд╣ рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдореЗрдВ рдЫрд╡рд┐рдпреЛрдВ рдФрд░ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рджреЛрдиреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ), рддреЛ рдЖрдкрдХреЛ рд▓реЗрдмрд▓ рдкрд░ рд▓рд╛рдЧреВ рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдХреЗ рдЗрд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╣рдЯрд╛рдирд╛ рд╣реЛрдЧрд╛, рдЬреЛ рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рдпрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд╕рдВрднрд╡ рдХрд╛рд░реНрдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

    рдпрджрд┐ рд▓реЗрдмрд▓ рдЕрд▓рдЧ рд╕реЗ рдирд┐рд╣рд┐рдд рд╣реИ (рдпрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ), рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдореЗрдВ рд╕рдмрд╕реЗ рдКрдкрд░реА "рдкрд░рдд" рдкрд░, рддреЛ рдЗрд╕реЗ рд╕рд╛рд╡рдзрд╛рдиреАрдкреВрд░реНрд╡рдХ рд╣рдЯрд╛рдП рдЬрд╛рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реИред
  2. рдЫрд┐рдкреА рд╣реБрдИ рд╡рд╕реНрддреБред рд╡реЗ рдХрд╣реАрдВ рднреА рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдРрд╕реЗ рд╡реЙрдЯрд░рдорд╛рд░реНрдХ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдирд╛ рдЕрдХреНрд╕рд░ рдЕрд╕рдВрднрд╡ рд╣реЛрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХреЛрдИ рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рдЙрдирдХреЗ рд░рдЪрдирд╛рдХрд╛рд░реЛрдВ рдХреЛ рдкрддрд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдХрд╣рд╛рдВ рджреЗрдЦрдирд╛ рд╣реИред рдЕрджрд╛рд▓рдд рдореЗрдВ рдпрд╣ рд╕рд╛рдмрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдРрд╕реЗ рдирд┐рд╢рд╛рди рдЕрджреНрд╡рд┐рддреАрдп рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдпреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд┐рд╢рд╛рди рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рджреЛрд╣рд░рд╛рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИред
рдпрд╣ рдЖрдЗрдЯрдо рдмрд╣реБрдд рддреНрд░реБрдЯрд┐рдкреВрд░реНрдг рдирд┐рдХрд▓рд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣рд╛рдВ рдХрд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдХреБрдЫ рдирд╣реАрдВ рд╣реИ, рдмрд╕ рдпрд╣ рдордд рднреВрд▓реЛ рдХрд┐ рдРрд╕реЗ рдЙрдкрд╛рдп рднреА рдореМрдЬреВрдж рд╣реИрдВред





- 4. "рдкреИрдХреЗрдЬрд┐рдВрдЧ" рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл



рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдХреЛ рдЫрд┐рдкрд╛рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рдХрдо рд╕реЗ рдХрдо рдПрдХ рдмрд╣реБрдд рд╣реА рдкреНрд░рд╕рд┐рджреНрдз рддрд░реАрдХрд╛ рд╣реИ рдЬреЛ рдЕрд╢реБрдн рд╣рдорд▓рд╛рд╡рд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рд╡рд╛рдВрдЫрд┐рдд рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рдХреЛ рдЬрдЯрд┐рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИред



рдЖрдк рдПрдВрдмреЗрдб рдЯреИрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреЗ рдлреНрд▓реЗрдХреНрд╕ рдпрд╛ рдлреНрд▓реИрд╢ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ SWF рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕ рддрд░рд╣:

 [Embed(source = "./dummy.swf", mimeType = "application/octet-stream")] private var _content:Class;
      
      



рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ (рдпрд╣ рдХрд┐рд╕реА рднреА рдмрд╛рдЗрдирд░реА рдлрд╝рд╛рдЗрд▓ рдпрд╛ рдХрдИ рдлрд╛рдЗрд▓реЗрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рдЕрдЧрд░ рдХрдИ рдПрдВрдмреЗрдб рдЯреИрдЧ рд╣реИрдВ) рдХреЛ DefineBinaryData рдЯреИрдЧ рдореЗрдВ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИред

рдЕрдЧрд▓рд╛, рдЖрдк рдЗрд╕ рддрд░рд╣ рд╕реЗ Loader.loadBytes



рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ "рдкреИрдХ" рдлрд╝рд╛рдЗрд▓ рдХреЛ рд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 var someFile:ByteArray = new _content(); loader.loadBytes(someFile);
      
      



SWF рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдФрд░ рдЯреИрдЧреНрд╕ рдХреЛ рд╣реЗрд░-рдлреЗрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдЙрдкрдХрд░рдг рд╣реИрдВ, рдЬрд┐рдирдХреА рдмрджреМрд▓рдд DefineBinaryData рдЯреИрдЧ рдХреЛ рдмрджрд▓рдирд╛ рдпрд╛ рдЬреЛрдбрд╝рдирд╛ рд╕рдВрднрд╡ рд╣реИред

рдпрд╣ рд╕рдм рдЬрд╛рдирддреЗ рд╣реБрдП, рдЖрдк рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╕рд░рд▓ "рдкреИрдХрд░" рдХреЛ рд╕реНрдХреЗрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓рдкреЗрдЯрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдХреЛ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рд░рд▓ рдФрд░ рддреЗрдЬ рд╕рдордорд┐рддреАрдп рдПрдХреНрд╕реЛрд░ рдХреЗ рд╕рд╛рде рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХрд░рдХреЗ, рдФрд░ рдмреВрдЯрд▓реЛрдбрд░ рдореЗрдВ (рдЬрд┐рд╕рдореЗрдВ "рдкреИрдХ" рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рд╣реЛрдЧрд╛) рдХреЛрдб рд▓рд┐рдЦреЗрдВ рдЬреЛ рдЗрд╕рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдХреЛ рдбрд┐рдХреНрд░рд┐рдкреНрдЯ рдХрд░реЗрдЧрд╛ рдФрд░ рдлрд┐рд░ рд▓реЛрдб рдХрд░реЗрдЧрд╛ред рдПрдХреНрд╕реЛрд░ рдХреЗ рд╕рд╛рде рд╕рд░рд▓ "рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди" рдХреЗрд╡рд▓ рдбрд┐рдХрдореНрдкрд╛рдЗрд▓рд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рддрд╛рдХрд┐ рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдлрд╝рд╛рдЗрд▓ рд▓реЛрдбрд░ рдореЗрдВ "рд╢реБрджреНрдз рд░реВрдк" рдореЗрдВ рди рд╣реЛ, рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рд╡реНрдпрд░реНрде рд╣реИред

рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдлрд╛рдЗрд▓реЗрдВ рдЕрдиреНрдп рддрд░реАрдХреЛрдВ рд╕реЗ "рдПрдореНрдмреЗрдбреЗрдб" рд╣реЛрддреА рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдмрд┐рдЯрдореИрдкрдбреЗрдЯрд╛ рдХреЗ рд░реВрдк рдореЗрдВ, рдФрд░ рдиреЗрд╕реНрдЯрд┐рдВрдЧ рдХреЗ рдХрдИ рд╕реНрддрд░ рднреА рдмрдирд╛рддреЗ рд╣реИрдВред



рд╕рд░рд▓рддрдо рдкреИрдХрд░ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг "3-SWFPacker" рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ, рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рджреЛ рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВ: Origin.swf рдФрд░ pack.swf - рдЖрдк рд╡рд┐рдШрдЯрд┐рдд рдХрд░рдиреЗ рдФрд░ рдЙрдирдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдпрд╣ рд╡рд┐рдзрд┐ рдХрдо рд╕реЗ рдХрдо рджреЛ рддрд░реАрдХреЛрдВ рд╕реЗ рдХрд░рддреА рд╣реИ:

- рдмреВрдЯрд▓реЛрдбрд░ рдореЗрдВ рдбрд┐рдХреЛрдбрд░ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рдЕрдзреНрдпрдпрди рдФрд░ рдЕрдкрдирд╛ рдбрд┐рдХреЛрдбрд░ рд▓рд┐рдЦрдирд╛ (рд╕рдордп рд▓реЗрдиреЗ рд╡рд╛рд▓реА, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдПрдХ рдмрдбрд╝реЗ рдиреЗрд╕реНрдЯрд┐рдВрдЧ рд▓реЛрдбрд░ рдХреЗ рд╕рд╛рде)

- рдореЗрдореЛрд░реА рдХреЗ рдЙрд╕ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рд╕рд╣реЗрдЬрдирд╛ рдЬрд┐рд╕рдореЗрдВ SWF рдлрд╝рд╛рдЗрд▓ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдирдкреИрдХ рдФрд░ рдПрдлрдкреА рдореЗрдВ рднрд░реА рд╣реБрдИ рд╣реИ, рд╕реНрдерд┐рдд рд╣реИ (рдмрд╕ рдФрд░ рдЬрд▓реНрджреА рд╕реЗ, рдЦрд╛рд╕рдХрд░ рдпрджрд┐ рдореЗрдореЛрд░реА рд╕реЗ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рд╕рд╛рдзрди рдЬреЛ рдиреАрдЪреЗ рд╡рд░реНрдгрд┐рдд рд╣реИрдВ, рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ)





- 5. рдбрд╛рдпрдиреЗрдорд┐рдХ рдХреЛрдб рдЬреЗрдирд░реЗрд╢рди рдФрд░ SWF рдПрдбрд┐рдЯрд┐рдВрдЧ



рдореБрдЭреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмрд╛рд░-рдмрд╛рд░ рдкреВрдЫрд╛ рдЧрдпрд╛ рд╣реИ - рдХреНрдпрд╛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдХреЗ рдлреНрд▓реИрд╢ рдореЗрдВ рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдпрд╛ рдЕрдиреНрдп SWF рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдФрд░ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрднрд╡ рд╣реИ? рдЬрд╡рд╛рдм рд╣реИ рд╣рд╛рдВ, рдпрд╣ рд╕рдВрднрд╡ рд╣реИ!

рдХреЛрдб рдХреЗ рд▓рд┐рдП, AS3Commons ByteCode рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЖрдкрдХреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдХреЗ рдмрд╛рдЗрдЯрдХреЛрдб рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдФрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ред

рдЖрдк рдЦрд░реЛрдВрдЪ рд╕реЗ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рдФрд░ рдЧреБрдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрдХреНрд╖рд╛рдПрдВ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдЕрдиреНрдп рд╡рд░реНрдЧреЛрдВ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВред рд╡рд┐рдзрд┐ рдирд┐рдХрд╛рдп, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдмрд╛рдЗрдЯрдХреЛрдб рдХреЛ рд░реИрдЦрд┐рдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ - methodBuilder.addOpcode(Opcode.getlocal_0)



, рдпрд╛ рддреБрд░рдВрдд рдмреНрд▓реЙрдХреЛрдВ рдореЗрдВ:

 var source:String = (<![CDATA[ getlocal_0 pushscope ... getlocal_1 returnvalue]]>).toString(); methodBuilder.addAsmSource(source);
      
      



рдЖрдк abcBuilder.buildAndLoad()



рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрддреНрдкрдиреНрди рдХреЛрдб рдХреЛ AVM рдореЗрдВ рд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ bytecode рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк as3abc рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдХрд┐ рд▓реЗрдЦрдХ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдХреБрдЦреНрдпрд╛рдд рдЬреЛрдП рдПрдмрд░реНрдЯ рд╕реЗ рдЕрджреНрднреБрдд рдРрдкреЗрдЯ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХрд╛ рдПрдХ рдЖрдВрд╢рд┐рдХ рдмрдВрджрд░рдЧрд╛рд╣ рд╣реИред

рдпрджрд┐ рдЖрдк рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдЧрддрд┐рд╢реАрд▓ рдирд┐рд╖реНрдкрд╛рджрди рдХрд╛ рд╕рдкрдирд╛ рджреЗрдЦрддреЗ рд╣реИрдВ, рди рдХрд┐ рдмрд╛рдЗрдЯрдХреЛрдб, рддреЛ as3scriptinglib рдХреЛ рджреЗрдЦреЗрдВ ред рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдореЗрдВ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд╣рд┐рдд ActionScript 3 / ECMAScript рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдФрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдлреНрд▓реЗрдХреНрд╕ рдбреЗрдореЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдкрд░рд┐рдпреЛрдЬрдирд╛ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХреА рдЧрдИ рд╣реИред



SWF рдлрд╝рд╛рдЗрд▓ рдФрд░ рдЗрд╕рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, as3swf рдпрд╛ swfassist рдЖрдЬрд╝рдорд╛рдПрдБ ред



рдордХреНрдЦреА рдкрд░ рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛, рд╕рд╛рде рд╣реА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдореЗрдВ рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдФрд░ рдмрдирд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛, рдЖрдкрдХреЛ рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рдХреЛ рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рдФрд░ рдЕрдкрдиреЗ рдХреЛрдб рдХреЛ рдЫрд┐рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рдЬрдЯрд┐рд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдЯреНрд░рд┐рдХреНрд╕ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдпрд╣рд╛рдБ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд╣рд▓реА 3 рдЪрд╛рд▓реЗрдВ рдЬреЛ рдореЗрд░реЗ рджрд┐рдорд╛рдЧ рдореЗрдВ рдЖрдИрдВ:

  1. рд╕рд░реНрд╡рд░ рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ рднрд╛рдЧреЛрдВ рдореЗрдВ рдЧреНрд░рд╛рд╣рдХ рдкрдХреНрд╖ рдкрд░ рдХреЛрдб \ bytecode рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВ рдФрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ, рдкреВрд░реЗ рдХреЛрдб рд╕реЗ рдореВрд▓ SWF рдореЗрдВ рдмреАрдорд╛рд░-рд╢реБрднрдЪрд┐рдВрддрдХреЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рдХреЗрд╡рд▓ рдпрд╣ рдХрд┐ рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ рдЫреЛрдбрд╝рдиреЗ рдХрд╛ рдорди рдирд╣реАрдВ рд╣реИ (рдореБрдХреНрдд рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ, рдмрдЯрди, рдЖрджрд┐ рдХрд╛ рдХреЛрдб) + рдбрд┐рдХреЛрдбрд░ рдХрд╛ рдХреЛрдб рдФрд░ "рдмрд┐рд▓реНрдбрд░" рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдВрддрд┐рдо рдХреЛрдб рд╣реИред
  2. SWF рдХреЛ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рд╛рдЗрдб рдкрд░ рднрд╛рдЧреЛрдВ рдореЗрдВ рдЗрдХрдЯреНрдард╛ рдХрд░реЗрдВ, рдХреЛрдб рдХреЗ рд╕рд╛рде рдПрдХ рдЯреНрд░рд┐рдХ рдХреЗ рд╕рдорд╛рди - рдЖрдк рдЯреИрдЧ рд╕реЗ рдПрдХрддреНрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рд╕рд░реНрд╡рд░ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдмреВрдЯрд▓реЛрдбрд░ рдореЗрдВ рдкреИрдХ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рдбреЗрдЯрд╛ рд╕реЗ рдПрдХ-рдПрдХ рдХрд░рдХреЗ рдЕрдирдкреИрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
  3. рдирд┐рд╖реНрдкрд╛рджрди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди рд╕реНрд╡рдпрдВ-рд╕рдВрд╢реЛрдзрд┐рдд рдХреЛрдб рдмрдирд╛рдПрдБ, рдЬреЛ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреБрдЫ рдирд┐рдпрдореЛрдВ рдпрд╛ рдкреИрдЯрд░реНрди рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЛрдВ рд╕реЗ рд╕рдорд╛рди рддрд░реАрдХреЗ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, i ++ рдХреЛ i + = 1 рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдФрд░ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рдмрд╛рдпреЛрдЯреЗрдХ рд╣реЛрдЧрд╛, рдХрдо рд╕реЗ рдХрдо рдЕрдм рдпрд╣ рдЕрд▓рдЧ рд╣реИ, FP 10.1 рдореЗрдВ), рд▓реВрдк рдХреЛ рднреА рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЛрдВ рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЖрджрд┐ред

    рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд╛рд░реНрдп рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЙрддреНрдкрдиреНрди рдХреЛрдб рдЙрди рддрд░реАрдХреЛрдВ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЗрд╕реЗ рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рддрд╛рдХрд┐ рдЙрдирдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдЕрдЧрд▓реА рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдореЗрдВ рдЕрдиреНрдп рд╡рд░реНрдЧреЛрдВ рдФрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЬрд┐рд╕рд╕реЗ рдХреЛрдб рдХреЛ рдХрд╛рдлреА рдЬрдЯрд┐рд▓ рдФрд░ рднреНрд░рдорд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗрдЧрд╛, рддрд╛рдХрд┐, рдпрджрд┐ рдпрд╣ рдХрд┐рд╕реА рд╣рдорд▓рд╛рд╡рд░ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдЙрддреНрддрд░рд╛рд░реНрджреНрдз рдХреЛ рдпрд╣ рд╕рдм "рдЧрдбрд╝рдмрдбрд╝" рдкрд╛рд░реНрд╕ рдкрд░ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рд╕рдордп рдмрд┐рддрд╛рдирд╛ рд╣реЛрдЧрд╛ред

    рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЬрдЯрд┐рд▓ (рдпрд╛ рдлреНрд▓реИрд╢ рдореЗрдВ рднреА рдЕрд╕рдВрднрд╡) рдЪрд╛рд▓ рд╣реИред рдореИрдВ рдЕрднреА рддрдХ рдлреНрд▓реИрд╢ рдкрд░ рдЗрд╕ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕реЗ рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╣реВрдВред рдпрджрд┐ рдЖрдк рдорд┐рд▓реЗ рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдореБрдЭреЗ рдХрд╣рд╛рдВ рджреЗрдЦрдирд╛ рд╣реИ, рдореБрдЭреЗ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред


- 6. рдХреЛрдб рдУрдлрд╝реНрдлрд╝реНрдпреВрд╢рди рдФрд░ рдбреЗрдЯрд╛ рдЫрд┐рдкрд╛рдирд╛



рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдУрдмреНрдпреВрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред рд╕реНрд░реЛрдд рдФрд░ рдмрд╛рдпрдЯреЗрдХреЛрдб-рд╕рдВрдХрд▓рд┐рдд рдХреЛрдб рджреЛрдиреЛрдВ рдХреЛ рдЗрд╕рдХреЗ рд╕рдВрдкрд░реНрдХ рдореЗрдВ рд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╕реНрд░реЛрдд рдХреЛрдб рдХрд╛ рдЕрд╡рд▓реЛрдХрди рдЗрддрдирд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдФрд░ рдкреНрд░рднрд╛рд╡реА рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдСрдлреНрдЯреЗрдХрд╕реЗрдЯрд┐рдВрдЧ рдмрд╛рдИрдЯреЗрдХреЛрдб рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЖрдХрд░реНрд╖рдХ рд▓рдЧрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдХрд┐ рдмрд╛рдпрдЯреЗрдХреЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХрд▓реНрдкрдирд╛ рдФрд░ рд╕рд░рд▓рддрд╛ рдХреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЧреБрдВрдЬрд╛рдЗрд╢ рд╣реИред

рдмрд╛рдпреЛрдЯреЗрдХ рдСрдмреНрд╕рдлреИрдХреНрд╢рди рдореЗрдВ рдирд╛рдо рдмрджрд▓рдиреЗ рд╡рд╛рд▓реЗ рддрддреНрд╡реЛрдВ рдХреЛ рд╕рдВрдХрд▓рдХ рдХреЗ рд▓рд┐рдП рдЕрд░реНрдерд╣реАрди рдФрд░ рдЕрдирдЬрд╛рдиреЗ рдирд╛рдореЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдХреБрдЫ рдПрдВрдЯреА-рдбрд┐рдХрдВрдкрд╛рдЗрд▓рд░ рдЯреНрд░рд┐рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдХреЛрдб рдХреЛ рдЫрд┐рдкрд╛рдпрд╛ рдФрд░ "рдХреВрдбрд╝реЗ рдХрд░рдирд╛" рдЖрджрд┐ред



рдирд╛рдо рдмрджрд▓рдирд╛, рд╢рд╛рдпрдж, рдПрдХрдорд╛рддреНрд░ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдФрд░ 100% рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рд╣реИ, рдЬреЛ рдлреНрд▓реИрд╢ рдореЗрдВ рдХрдо рд╕реЗ рдХрдо рдХреБрдЫ рдЫрд┐рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред рд╡рд┐рдзрд┐ рдХрд╛ рд╕рд╛рд░ рдЙрди рддрд░реАрдХреЛрдВ, рдЧреБрдгреЛрдВ, рдкреИрдХреЗрдЬреЛрдВ рдФрд░ рдирд╛рдореЛрдВ рдХреЗ рдЕрдиреНрдп рддрддреНрд╡реЛрдВ рдХреЛ рдмрджрд▓рдирд╛ рд╣реИ рдЬреЛ рд╕рдВрдХрд▓рди рдХреЗ рдмрд╛рдж рд╕рд╣реЗрдЬреЗ рдЬрд╛рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЛрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдореВрд▓ рдирд╛рдореЛрдВ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИ, рдЖрдкрдХреЛ рдХреЛрдб рдЕрдиреБрд╕рдВрдзрд╛рди рдХреЗ рджреМрд░рд╛рди рдЕрд░реНрде рдореЗрдВ рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рддреЗ рд╣реБрдП, рдпрд╣ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЖрдХреНрд╖реЗрдк рдХреЗ рдмрд╛рдж, рдирдП рдирд╛рдореЛрдВ рдореЗрдВ рдЕрдорд╛рдиреНрдп рд╡рд░реНрдг рдпрд╛ рдЖрд░рдХреНрд╖рд┐рдд рд╢рдмреНрдж рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдЖрдкрдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рд╡рд┐рдШрдЯрд┐рдд рд╣реЛрдиреЗ рдФрд░ рдХреЛрдб рдХреЛ рд╡рд┐рдШрдЯрди рдХреЗ рдмрд╛рдж рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрдЧрд╛ред



рдХрднреА-рдХрднреА, рдЬрдм рдмрд╛рдпреЛрдЯрдХреЛрдб рдХреЛ рдмрд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ "рдЯреНрд░реИрдкреНрд╕" рдбрд┐рдХрдореНрдкрд╛рдЗрд▓рд░реНрд╕ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реЛрддреЗ рд╣реИрдВ, рдЗрд╕ рддрдереНрдп рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдХрд┐ рдбрд┐рдХреЙрдореНрдкрд▓рд░ рдПрдлрдкреА рдХреЗ рд╡рд┐рдкрд░реАрдд, рдмреНрд▓реЙрдХ рдореЗрдВ, рдЬрдЯрд┐рд▓ рддрд░реАрдХреЗ рд╕реЗ рдХреЛрдб рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдЗрд╕реЗ рд░реИрдЦрд┐рдХ рд░реВрдк рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреЛрдб рдмрд╕ "рдХреВрдбрд╝реЗ" рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕реЗ рдорд╛рддреНрд░рд╛ рдореЗрдВ рдмрдврд╝рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреА рдкрдардиреАрдпрддрд╛ рдХреЛ рдХрдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдкреНрд░рддрд┐рдХреВрд▓ рдкреНрд░рднрд╛рд╡ рдбрд╛рд▓ рд╕рдХрддрд╛ рд╣реИред



рдбреЗрдЯрд╛ рдХреЛ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рд╕реЗ рдЫрд┐рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

рдХреБрдЫ рдбрд┐рдХрдВрдкрд╛рдЗрд▓рд░ рдФрд░ рдбрд┐рд╕реНрд╕реЗрдореНрдмрд▓рд░реНрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЯреИрдЧ рдФрд░ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреЛ рдЦреЛрдЬрдиреЗ рдФрд░ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рдмрдирд╛рддреЗ рд╣реИрдВред



рдбрд┐рдХрдореНрдкрд╛рдЗрд▓рд░реНрд╕ рдореЗрдВ рдЙрдЪреНрдЪ-рдЧреБрдгрд╡рддреНрддрд╛ рдХреЗ рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдпрд╣ рдЕрдзреНрдпрдпрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдбрд┐рдХрдореНрдкреЛрд▓рд░ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдмрд╛рдпрдЯреЗрдХреЛрдб рдФрд░ рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдХреА рдЬрд╛рдВрдЪ рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдпрд╛рдж рд░рдЦреЗрдВ - рдбрд┐рдХрдВрдкрд╛рдЗрд▓рд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд▓рдЧрд╛рддрд╛рд░ рдЕрдкрдиреЗ рдЙрддреНрдкрд╛рджреЛрдВ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдпрджрд┐ рдЖрдкрдХреЗ рдЯреНрд░рд┐рдХ рдХреЗ рд╕рд╛рде SWF рдЙрдиреНрд╣реЗрдВ рдорд┐рд▓ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпреЗ рдЯреНрд░рд┐рдХ рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рд╕рдХрддреА рд╣реИрдВред

рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рд╕реБрд░рдХреНрд╖рд╛ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рд╣реИрдВ рдЬреЛ рдХреЗрд╡рд▓ рдирд╛рдо рдХреЗ рдмрд┐рдирд╛ рдбрд┐рдХрдВрдкрд╛рдЗрд▓рд░ рдпрд╛ "рдкреИрдХреЗрдЬрд┐рдВрдЧ" рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдЦрд┐рд▓рд╛рдл рдЪрд╛рд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдЖрдкрдХреЛ рдЙрдЪреНрдЪ-рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдпрд╛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдбрд┐рдХрдВрдкрд╛рдЗрд▓рд░реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рдЧрднрдЧ рдореВрд▓ рд╕реНрд░реЛрдд рдХреЛрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬреЛ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдмрд┐рдирд╛ рд╕рдВрдХрд▓рди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкрдврд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред рдиреАрдЪреЗ рдореИрдВ "рд╕рд╣реА" рдЯреВрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛, рдЬрд┐рд╕ рдкрд░ рдЖрдкрдХреЛ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред





- 7. рдореЗрдореЛрд░реА рд╕реЗ SWF рдлрд╝рд╛рдЗрд▓ рдХреЛ рдмрдЪрд╛рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рд╕рдВрд░рдХреНрд╖рдг



рд╕реНрд╡рдпрдВ рдХреЛ рд╕реНрдореГрддрд┐ рд╕реЗ рдПрдХ рдбрдВрдк рд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдПрдХ рд╕рд░рд▓ рддрдХрдиреАрдХ рд╣реИ рдЬреЛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЬрдЯрд┐рд▓ рдХрд░ рд╕рдХрддреА рд╣реИ - рдЖрдк рдмрд╣реБрдд рд╕рд╛рд░реЗ рдирдХрд▓реА SWF рд╣реЗрдбрд░ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ (рд╡реЗ рдЖрдорддреМрд░ рдкрд░ рдореЗрдореЛрд░реА рдореЗрдВ SWF рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ) рдЬреЛ рдореВрд▓ SWF рдХреЛ рдЙрдирдХреЗ рдмреАрдЪ рдЦреЛ рдЬрд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВрдЧреЗред рддрд╛рдХрд┐ рдЖрдкрдХреА SWF рдлрд╝рд╛рдЗрд▓ рджреВрд╕рд░реЛрдВ рд╕реЗ рдЕрд▓рдЧ рди рд╣реЛ, рдЖрдк рдЕрдкрдиреА SWF рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЖрдХрд╛рд░реЛрдВ = рдЖрдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рд╕рд╛рд░реЗ рдирдХрд▓реА рд╣реЗрдбрд░ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред

рд╣реЗрдбрд░ рдХреЛ рдореЗрдореЛрд░реА рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рдЙрдиреНрд╣реЗрдВ рдПрдХ рдмрд╛рдЗрдЯрдПрдпрд░реЗ рдореЗрдВ рд▓рд┐рдЦреЗрдВред рдЗрд╕ рд╡рд┐рдзрд┐ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ, рдЬреЛ рдХрд┐рд╕реА рдПрдХ рд░рдХреНрд╖рдХ рдХреЗ рдмреВрдЯрд▓реЛрдбрд░ рд╕реЗ рдЦреАрдВрдЪрд╛ рдЧрдпрд╛ рд╣реИ:

 private function spamMemory(swfBytes:ByteArray):void { var allLen:uint = swfBytes.readUnsignedInt(); var swfLen:uint = swfBytes.readUnsignedInt(); var spamMemorySWFLen:uint = swfBytes.readUnsignedInt(); var spamMemorySWFBytes:ByteArray = new ByteArray(); spamMemorySWFBytes.endian = Endian.LITTLE_ENDIAN; swfBytes.readBytes(spamMemorySWFBytes, 0, spamMemorySWFLen); var allBytes:ByteArray = new ByteArray(); while (allBytes.length < allLen) { spamMemorySWFBytes.position = 4; spamMemorySWFBytes.writeUnsignedInt((((swfLen * 3) / 4) + ((Math.random() * swfLen) / 2))); allBytes.writeBytes(spamMemorySWFBytes); }; Sprite.prototype["__spam_"] = allBytes; }
      
      



рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ, swfBytes "рдирдХрд▓реА" рд╣реЗрдбрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП "рдЯреЗрдореНрдкрд▓реЗрдЯ" рд╣реЗрдбрд░ рдФрд░ "рд╕реЗрдЯрд┐рдВрдЧреНрд╕" рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рд╕рд╛рде рдмрд╛рдЗрдЯреНрд╕ рдХреА рдПрдХ рд╕рд░рдгреА рд╣реИ, рдФрд░ рдПрдХ рд▓реВрдк рдореЗрдВ, "рдЯреЗрдореНрдкрд▓реЗрдЯ" рд╣реЗрдбрд░ рдХреА рд▓рдВрдмрд╛рдИ рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рд░реЗрдВрдЬ рдореЗрдВ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдорд╛рди рд╕реЗ рднрд░ рдЬрд╛рддреА рд╣реИред





- 8. рдлреНрд▓реИрд╢ рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдЯреВрд▓рдХрд┐рдЯ



рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЕрдиреБрднрд╡ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдореИрдВ рдЗрди рдЙрдкрдХрд░рдгреЛрдВ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░реВрдВрдЧрд╛ (рдХреАрдорддреЛрдВ рдХреЛ 2010 рдХреЗ рдЕрдВрдд рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ):



Decompilers:

( ):

\:

рдореИрдВ рдЖрдкрдХреЛ рдпрд╣ рднреА рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдЕрдорд╛рдпрдЯрд╛ рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдПрдирдХреНрд░рд┐рдкреНрдЯ, рдбреАрд╕реАрдУрдореЙрдлреНрдЯ рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдкреНрд░реЛрдЯреЗрдХреНрдЯрд░, рдореЛрдЪреА рдПрдирдХреНрд░рд┐рдкреНрд╢рди, - рдпрд╣ рд╡рд╣ рдирд╣реАрдВ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреА "рд░рдХреНрд╖рд╛" рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП (рдлрд┐рд▓рд╣рд╛рд▓), рдЖрдк рдЕрдкрдирд╛ рдкреИрд╕рд╛ рдмреЗрдХрд╛рд░ рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдкрд░ рдЦрд░реНрдЪ рдХрд░реЗрдВрдЧреЗред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдУрдлрд╝реНрд╕реНрдХреНрдпреВрд╢рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ makc3d рд╕реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ ред рдбреЗрдкреНрд░реЛрдЯреЗрдХреНрдЯрд░реНрд╕ \ рдбрд┐рдХреНрд░рд┐рдкреНрдЯрд░реНрд╕, рдЖрджрд┐ред:





рд╡рд┐рд╡рд┐рдз:

рдпрджрд┐ рдЖрдк рдЕрдиреНрдп рдЬрд╛рдирддреЗ рд╣реИрдВ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рдЙрдкрдХрд░рдг, рдФрд░ рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдмрддрд╛рдПрдВ рдпрд╛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рд▓рд┐рдЦреЗрдВ, рдореБрдЭреЗ рдЙрдирд╕реЗ рдорд┐рд▓рдХрд░ рдЦреБрд╢реА рд╣реЛрдЧреАред





- рдЙрдкрд╕рдВрд╣рд╛рд░



рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рд╣рдо рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреА рд░рдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рддрд╛рддреНрдХрд╛рд▓рд┐рдХ рд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рдШреБрд╕рдкреИрдард┐рдпреЛрдВ рдХреЗ рдХреБрдЫ рджрд░реНрд╢рдХреЛрдВ рдХреЛ рдорд╛рдд рджреЗ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрджрд┐ рдХреЛрдИ рдкреЗрд╢реЗрд╡рд░ рдЖрдкрдХреА рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдлрд╝рд╛рдЗрд▓ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ, рддреЛ рд╡рд╣ рд╢рд╛рдпрдж рдмрд╛рдзрд╛рдУрдВ рдХреЛ рдирд╣реАрдВ рд░реЛрдХреЗрдЧрд╛ рдФрд░ рдорд╛рдорд▓реЗ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░ рджреЗрдЧрд╛, рдЦрд╛рд╕рдХрд░ рдпрджрд┐ рд╡рд╣ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдХрд╛рд░реНрдп рдпрд╛ рдкрд░реНрдпрд╛рдкреНрдд рдореМрджреНрд░рд┐рдХ рдЗрдирд╛рдо рд╕реЗ рдкреНрд░реЗрд░рд┐рдд рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдореЗрд╢рд╛ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рдпреЛрдЧрджрд╛рди рдХрд╛ рдЙрдЪрд┐рдд рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░реЗрдВ - рдпрджрд┐ рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рдирд╣реАрдВ рд╣реИ рддреЛ рдЗрд╕ рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рдордп рдФрд░ рдкреИрд╕рд╛ рдЦрд░реНрдЪ рди рдХрд░реЗрдВред

рдФрд░ рдлрд┐рд░ рднреА - рдбреАрдмрдЧрд┐рдВрдЧ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл рдХреЛ рд╕рдВрдХрд▓рд┐рдд рди рдХрд░реЗрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕рдореЗрдВ рд╕рдВрднрд╛рд╡рд┐рдд рдХреНрд░реИрдХрд░ рдХреЗ рд▓рд┐рдП рдХрдИ рдЙрдкрдпреЛрдЧреА рдбреЗрдЯрд╛ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдХрдореА рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред



рд╕рд╛рдордЧреНрд░реА рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдХрдард┐рди рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЕрдкрдиреЗ рд▓рд┐рдП рдХреБрдЫ рдирдпрд╛ рдкрд╛рдпрд╛ рд╣реЛрдЧрд╛ред рдЖрдк рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдХреЛрдИ рднреА рд╕реБрдЭрд╛рд╡, рд╕реБрдЭрд╛рд╡ рдФрд░ рд░рдЪрдирд╛рддреНрдордХ рд╕реБрдЭрд╛рд╡ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдореИрдВ рдЖрдкрдХрд╛ рдмрд╣реБрдд рдЖрднрд╛рд░реА рд░рд╣реВрдВрдЧрд╛ред



рдЗрд╕ рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рд╢рд┐рдХреНрд╖рдг рд╕рд╛рдордЧреНрд░реА рдФрд░ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕реНрд░реЛрдд (рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ):

  1. FITC рдПрдореНрд╕реНрдЯрд░реНрдбрдо 2010 рдХреЗ рд╕рд╛рде рдХреНрд▓реЙрд╕ рд╡рд╛рд╣рд▓рд░реНрд╕ "рд╣реИрдХрд┐рдВрдЧ рдПрд╕рдбрдмреНрд▓реНрдпреВрдПрдл" рдХреА рдкреНрд░рд╕реНрддреБрддрд┐ ред
  2. рд╕рд╛рдЗрдордиреЛрд╡ рд╡реЗрд▓реЗрдВрдЯрд╛рдЗрди рд░рд┐рдкреЛрд░реНрдЯ ( рд╡реЗрд▓рдЧрд╛рд░реНрдб ) "рдлреНрд▓реИрд╢рдЧреИрдо 2010 рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░реЗ рдЧреЗрдо рдХреЛ рдХреМрди рдФрд░ рдХреИрд╕реЗ рд╣реИрдХ рдХрд░реЗрдВ"
  3. рдирд┐рдХрд┐рддрд╛ рд▓реЗрд╢рдЪреЗрдВрдХреЛ рджреНрд╡рд╛рд░рд╛ рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ рдПрдХ рд▓реЗрдЦ, рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдФрд░ рдХреЛрдб рдХреА рд░рдХреНрд╖рд╛ рдХреИрд╕реЗ рдХрд░реЗрдВред
  4. рд░реЛрдорд╛рдиреАрдо рд╕реЗ рд▓реЗрдЦ "рдбреВ-рдЗрдЯ-рдпреЛрд░ рдкреНрд░реЛрдЯреЗрдХреНрд╢рди"ред
  5. рдиреЙрдЯрд┐рд▓рд╕ рдХрд╛ рд▓реЗрдЦ "рдЕрдкрдиреЗ рдЧреЗрдо рдХреЛ рд░рд┐рдмреНрд░рд╛рдВрдбрд┐рдВрдЧ рд╕реЗ рдХреИрд╕реЗ рдмрдЪрд╛рдПрдВред"
  6. puzzlesea "Robolander, 25 days later. , ".
  7. flashco ": тВм1500".
  8. Alexis' SWF Reference тАФ , SWF .
  9. OWASP тАУ , flash ( , ..).
  10. flash senocular "Security Domains, Application Domains, and More in ActionScript 3.0".
  11. Adobe flash.
  12. Adobe FP 10 (White Paper).
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЗрд╕ рд▓реЗрдЦ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдб рдореЗрдВ, рдпрд╣рд╛рдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реНрд░реЛрддреЛрдВ рд╕реЗ рд╡рд┐рднрд┐рдиреНрди рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдореБрдЭреЗ рдпрд╛рдж рдирд╣реАрдВ рдерд╛ред



рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рдлрд╛рдЗрд▓реЗрдВ: codestage.ru/files/flash_defend_files.7z



All Articles