Solved

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

Posted on 2008-06-18
11
325 Views
Last Modified: 2010-04-05
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
Comment
Question by:ThievingSix
11 Comments
 
LVL 17

Expert Comment

by:TheRealLoki
ID: 21818982
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
 
LVL 13

Author Comment

by:ThievingSix
ID: 21819423
The problem is that the flash movie calls GetURL. If it doesn't have //www.mymovie.com/flash, it won't play.
0
 
LVL 37

Expert Comment

by:Geert Gruwez
ID: 21820271
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
Free Tool: Postgres Monitoring System

A PHP and Perl based system to collect and display usage statistics from PostgreSQL databases.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
LVL 13

Author Comment

by:ThievingSix
ID: 21820684
The problem with that solution is this is an active-x control.
0
 
LVL 37

Accepted Solution

by:
Geert Gruwez earned 500 total points
ID: 21821104
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
 
LVL 37

Expert Comment

by:Geert Gruwez
ID: 21821116
pnl is a TPanel on Form1 called pnl
0
 
LVL 13

Author Comment

by:ThievingSix
ID: 21827470
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
 
LVL 37

Expert Comment

by:Geert Gruwez
ID: 21829112
Put a readonly on the website flash file ... :)
0
 
LVL 13

Author Comment

by:ThievingSix
ID: 21829266
It's not my flash file.
0
 
LVL 3

Expert Comment

by:Mamouri
ID: 21832571
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
 
LVL 13

Author Comment

by:ThievingSix
ID: 21835672
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

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Run video youtube webbrowse 10 65
select query - oracle 16 100
Sending files from  idTcpServer Socket to idTcpClient 2 44
Twebbrowser add css to the header 3 27
Introduction The parallel port is a very commonly known port, it was widely used to connect a printer to the PC, if you look at the back of your computer, for those who don't have newer computers, there will be a port with 25 pins and a small print…
Creating an auto free TStringList The TStringList is a basic and frequently used object in Delphi. On many occasions, you may want to create a temporary list, process some items in the list and be done with the list. In such cases, you have to…
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…

808 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question