Zaladowac *.swf z zasobow bezposrednio, nie z dysku

0

Czy wie kto jak zaladowac sobie animacje bezposrednio animacje Flash (swf) z zasobow?

Kontrolka swflash.ocx udostepnia tylko ladowanie z WideString czyli z podanej sciezki na dysku.
..

    // extract ShockwaveFile from resource to application directory 
    Fres := TResourceStream.Create(0,'SHOCKWAVEFILE',RT_RCDATA);
    Ffile := TFileStream.Create('flashmovie.swf',fmCreate);
    Try
      Ffile.CopyFrom(Fres,Fres.Size);
      Fres.Free;
    Finally
      Ffile.Free;
    end;
    //Assign the extracted swf file to your TShockwaveFlash object
    ShockwaveFlash1.Movie := AppDir+'\flashmovie.swf';

end; 

a ja chcialbym jakos tak jak mozna Ladowac bezposrednio np Bitymapy itp, poprzez

   DllInstance := LoadLibrary('AniLib.dll');//tu jest plik swf w zasobach
   ShockwaveFlash1.Movie :=LoadFromResourceName(DllInstance,'ani1',RT_RCDATA);//.../jakos tak..ale to oczywiscie bledna linia

pomoze ktos???

0

Miałem kiedyś identyczny problem ale niestety nikt mi nie odpowiedział a następnie doczytałem , że kontrolka *.OCX musi mieć specjalnie napisaną funkcję aby można było ciągnąć z zasobów *.EXE Twojego programu.
Ponieważ moja aplikacja miała być na dyskietce więc zrobiłem tak że zapisuję z zasobu do Windosowych TEMPÓW i załadowuję do *.OCX funkcji a następnie kasuję ten plik tymczasowy.
Ja nie znalazłem innego rozwiązania.

0

OK, dzieki.
No chyba tylko takie pozostaje.

1 użytkowników online, w tym zalogowanych: 0, gości: 1