Solved

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

Posted on 2008-06-18
11
324 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
NAS Cloud Backup Strategies

This article explains backup scenarios when using network storage. We review the so-called “3-2-1 strategy” and summarize the methods you can use to send NAS data to the cloud

 
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

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

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

Suggested Solutions

The uses clause is one of those things that just tends to grow and grow. Most of the time this is in the main form, as it's from this form that all others are called. If you have a big application (including many forms), the uses clause in the in…
Have you ever had your Delphi form/application just hanging while waiting for data to load? This is the article to read if you want to learn some things about adding threads for data loading in the background. First, I'll setup a general applica…
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…
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…

770 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