[Last Call] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 331
  • Last Modified:

Flash playing: make the flash movie believe it's playing from it's original web site.

Dear experts,

  With such a long title, a short explanation is due. What I have been trying to accomplish is best shown from an example. Let's say that you have a downloaded flash movie that when started up only plays from it's indented website. So playing it embedded from a delphi application isn't working too well.

Is there a work around or a variable to set that will make the flash movie believe its' playing from its' intended website?
0
ThievingSix
Asked:
ThievingSix
1 Solution
 
TheRealLokiSenior DeveloperCommented:
I'm guessing download the html page source and change the absolute paths to relative paths (or no path at all to sue the same folder). run a cut down version of the html source from the same dir
[shrug] just a guess
0
 
ThievingSixAuthor Commented:
The problem is that the flash movie calls GetURL. If it doesn't have //www.mymovie.com/flash, it won't play.
0
 
Geert GruwezOracle dbaCommented:
create a override for the function and give it the string it wants ...

type
  TYourClass = TFlashClass
    function GetUrl: string; override;
  end;

function TYourClass.GetUrl: string;
begin
  Result := '//www.mymovie.com/flash';
end;
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
ThievingSixAuthor Commented:
The problem with that solution is this is an active-x control.
0
 
Geert GruwezOracle dbaCommented:
Why not just load it from the original location ?


uses ShockwaveFlashObjects_TLB;
 
{$R *.dfm}
 
procedure TForm1.ButtonClick(Sender: TObject);
var f: TShockwaveFlash;
begin
  f := TShockwaveFlash.Create(Self);
  f.Parent := pnl;
  f.LoadMovie(0, 'http://www.flashkit.com/RealMedia/ads/Creatives/OasDefault/Jumpeye_CP_1a/txeff_ad_fk.swf');
  f.Play;
end;

Open in new window

0
 
Geert GruwezOracle dbaCommented:
pnl is a TPanel on Form1 called pnl
0
 
ThievingSixAuthor Commented:
That does indeed work but I was hoping for a way to have the flash file embedded.(The web site can change the flash movie).

If no responses are made for the answer that I would like I will accept you answer.
0
 
Geert GruwezOracle dbaCommented:
Put a readonly on the website flash file ... :)
0
 
ThievingSixAuthor Commented:
It's not my flash file.
0
 
MamouriCommented:
Using DelphiFlash component (http://www.delphiflash.com/) you can decompile the flash file and replace the ActionScript that uses GetUrl function with your function and create a new flash movie in TMemoryStream and instead of the original movie, load this modified Flash movie.

Also you can do the same thing by decompiling the flash using Sothink Decompiler (http://www.sothink.com/product/flashdecompiler/) and create a new movie that didn't has such limitation and not depend on the location of the movie
0
 
ThievingSixAuthor Commented:
I've done that on movies that are not obfuscated, but doesn't work otherwise. I was hoping to catch the getURL after it was called but before it actually got the url.
0

Featured Post

Upgrade your Question Security!

Add Premium security features to your question to ensure its privacy or anonymity. Learn more about your ability to control Question Security today.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now