Question

Playing a Youtube video inside an iframe in TEmbeddedWB has always worked, but now unfortunately it does not work anymore. Did Google change something to stop playing videos in programs with an embedded web browser? I have the following simplified HTML file (which loads and plays perfectly in any web browser):

<!DOCTYPE html>
<html>
  <head>
    <title>A Video</title>
  </head>
  <body>
    <iframe width="640" height="360" src="http://www.youtube.com/embed/HnbMYzdjuBs?feature=player_detailpage" frameborder="0" allowfullscreen></iframe>
  </body>
</html>

I load it with this code:

procedure TForm1.btn1Click(Sender: TObject);
begin
  EWB.LoadFromFile('D:\video.html');
end;

As I said, opening this file in any web browser opens and plays perfectly. But I see only a black screen and nothing happens.

EDIT 201306172342:

Even when I place the above HTML file on a web-server and navigate to it, it remains black:

WB.Navigate('http://www.mywebsite.com/video.html');

While, of course, displaying this page in web browser like e.g. Chrome shows and plays the video normally!

PLEASE, CAN ANYBODY HELP WITH THIS???

Was it helpful?

Solution

From time to time, adobe removed his activex programs from the computer . (which is usually done with a plugin update) .
If you think this will be installed again the next time you update, you are mistaken.

First you should check whether this has already happened.

system settings

look for the Flash Player Icon.

enter image description here

in the extra properties you see a not installed .
(They would have better this message formulated that way.
Removed with the last plugin update).

enter image description here

Download the new aktivex part.

Flash Player Support Center

enter image description here

double click flashplayer_11_ax_debug.exe and follow the instructions.

A new control indicates. It already looks better.

enter image description here

Before Install the aktivex part.
To test this I have prepared a small test program. (XP Sp3, Delphi 5)
used youtube.htmlis the same as your video.html posted above.

unit youtube;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, OleCtrls, SHDocVw_EWB, EwbCore, EmbeddedWB, SHDocVw,
  MOZILLACONTROLLib_TLB;

type
  TForm1 = class(TForm)
    EmbeddedWB1: TEmbeddedWB;
    WebBrowser1: TWebBrowser;
    MozillaBrowser1: TMozillaBrowser;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
  EmbeddedWB1.Navigate('http://www.moskito-x.de/stack/youtube.html');
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  WebBrowser1.Navigate('http://www.moskito-x.de/stack/youtube.html');
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  MozillaBrowser1.Navigate('http://www.moskito-x.de/stack/youtube.html');
end;

end.

After pressing Button1 to Button3 , I get the following

enter image description here

After installing flashplayer_11_ax_debug.exe
I get the following.

enter image description here

The mozilla browser I will get to run yet.(Not Today :-) )

Your aktivex folder should now look like this.

enter image description here

In your question you said :

Playing a Youtube video inside an iframe in TEmbeddedWB has always worked,   
but now unfortunately it does not work anymore.

look at the date of your FlashUtil32_11_7_700_???_Plugin.exe
That was the time your TEmbeddedWB stops working.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top