Adobe Flash .swf to Random Access Memory!

    • C#
    • .NET (FX) 4.0

      Adobe Flash .swf to Random Access Memory!

      Hey VB-Paradise Community,

      hier auch mal von mir ein Sourcecode-Austausch.

      Wozu? - Nun, ich hatte vor geraumer Zeit das Problem, ich wollte eine Standalone.exe erstellen hatte aber das Problem, dass ich die Flash.swf Datei immer entpacken musste und dementsprechend in dem Client seinem Ordner lag.
      In diesem fall ist dies nicht so, die .swf ist eine eingebettete ressource welche direkt "gestreamt" werden kann, und sofern es kein XXL 2GB Video ist auch kaum bis keinerlei auswirkungen hat. Die benötigten .dll's können bspw. über ILMerge in eine einzelne .exe gepackt werden.

      Was benötigt man? - Installiertes Adobe Flash.


      Hier der Code, welcher unten als Projekt direkt zum Download bereit steht, ebenso ein Debug.

      C#-Quellcode

      1. private void InitializeFlashMovie(AxShockwaveFlashObjects.AxShockwaveFlash FlashObjekt, byte[] swfFile)
      2. {
      3. using (MemoryStream swf = new MemoryStream())
      4. {
      5. using (BinaryWriter writer = new BinaryWriter(swf))
      6. {
      7. writer.Write(8 + swfFile.Length);
      8. writer.Write(0x55665566);
      9. writer.Write(swfFile.Length);
      10. writer.Write(swfFile);
      11. swf.Seek(0, SeekOrigin.Begin);
      12. FlashObjekt.OcxState = new System.Windows.Forms.AxHost.State(swf, 1, false, null);
      13. }
      14. }
      15. }
      16. private void Form1_Load(object sender, EventArgs e)
      17. {
      18. byte[] data = Properties.Resources.snowflake; //Wo snowflake steht sollte der Name eurer .swf Datei stehen, welche ihr zuvor in den ressourcen Ordner eingefügt habt.
      19. InitializeFlashMovie(axShockwaveFlash1, data);
      20. }





      Bilder
      • How.PNG

        1,04 MB, 1.695×679, 364 mal angesehen
      Dateien
      „Ich würde immer einen faulen Menschen wählen, um einen schwierigen Job zu erledigen, denn er würde sicherlich einen einfachen Weg finden, dies zu tun.“ - Bill Gates

      Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Sayem“ ()