XE7 de import yapma
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
XE7 de import yapma
Selamlar...
Komik bir durum ama: improt işlemi hiç yapmadım ve yapamadım "XE7" de windows media player nasıl import edebilirim...
Komik bir durum ama: improt işlemi hiç yapmadım ve yapamadım "XE7" de windows media player nasıl import edebilirim...
Re: XE7 de import yapma
Maalesef konu güncel arkadaşlar....
Re: XE7 de import yapma
Merhaba.
- TLB dosyasını oluşturmak kafi. Zaten ActiveX component import edip forma koymana lüzum yok.
- XE serisinden beridir Component Package oluşturmak falan gerekiyordu. Ondan sonra yükleme falan yapıyorduk. Bir kaç defa eski tip bileşenin XE versiyonlarına uyumlaştırmak için çalışma yapmıştım ama artık direkt kaynaktan kullanıyorum. VCL zaten -şahsen- mümkün olduğunca kullanmıyorum.
Kullanımı...
TLB dosyasını elde etmek için işlem adımları.








- TLB dosyasını oluşturmak kafi. Zaten ActiveX component import edip forma koymana lüzum yok.
- XE serisinden beridir Component Package oluşturmak falan gerekiyordu. Ondan sonra yükleme falan yapıyorduk. Bir kaç defa eski tip bileşenin XE versiyonlarına uyumlaştırmak için çalışma yapmıştım ama artık direkt kaynaktan kullanıyorum. VCL zaten -şahsen- mümkün olduğunca kullanmıyorum.
Kullanımı...
Kod: Tümünü seç
uses WMPLib_TLB;
Var
xMediaPlayer : TWindowsMediaPlayer;
procedure TForm1.BitBtn1Click(Sender: TObject);
Var
Media : IWMPMedia;
begin
xMediaPlayer := TWindowsMediaPlayer.Create(nil);
xMediaPlayer.ParentWindow := Form1.Handle;
xMediaPlayer.URL := 'd:\ARMAN-Genel\Music\gelevera deresi.mp3';
xMediaPlayer.uiMode := 'invisible';
xMediaPlayer.controls.play;
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
if Assigned(xMediaPlayer) AND (xMediaPlayer.playState = wmppsPlaying) then
begin
xMediaPlayer.controls.stop;
xMediaPlayer.close;
xMediaPlayer.Free;
xMediaPlayer := Nil;
ShowMessage('Player durduruldu...');
end else ShowMessage('ne oldu bilemedim...');
end;








Re: XE7 de import yapma
mrmarman yazdı:Merhaba.
Hocam bu resim ekranı hariç tüm dediklerinizi yaptım fakat nedense windows media player xe7 de halen çıkmıyor...
Re: XE7 de import yapma
VcL paletine eklenmesini bekleme. Yukarıda örneğini gösterdiğim şekilde uygula.
Re: XE7 de import yapma
mrmarman yazdı:VcL paletine eklenmesini bekleme. Yukarıda örneğini gösterdiğim şekilde uygula.
Hocam saçma birşey ama inanın çıkmıyor, windows media player uygulamasını "VLV Forms Application - Delphi" dan açmaya çalışıyorum fakat yok...
Re: XE7 de import yapma
Çıkmayan ne? Sanırım siz bileşenler arasında görünmesini bekliyorsunuz.hido yazdı:mrmarman yazdı:VcL paletine eklenmesini bekleme. Yukarıda örneğini gösterdiğim şekilde uygula.
Hocam saçma birşey ama inanın çıkmıyor, windows media player uygulamasını "VLV Forms Application - Delphi" dan açmaya çalışıyorum fakat yok...
Ama Sn.mrmarman da ısrarla "size bileşen paletinde çıkmasını bekleme" diyor

Örneğe bakarsanız TWindowsMediaPlayer, TForm içinde değil. Yani form üzerine konulmuş bir bileşen değil.
There's no place like 127.0.0.1
Re: XE7 de import yapma
Hocam Dikaktimden kaçmış kusura bakmayım, ancak bu seferde anlayamadığım şey o zaman görseli nereye vereceğim windows media player bileşeni eklemeyince...SimaWB yazdı:hido yazdı:mrmarman yazdı:VcL paletine eklenmesini bekleme. Yukarıda örneğini gösterdiğim şekilde uygula.
Çıkmayan ne? Sanırım siz bileşenler arasında görünmesini bekliyorsunuz.
Ama Sn.mrmarman da ısrarla "size bileşen paletinde çıkmasını bekleme" diyor
Örneğe bakarsanız TWindowsMediaPlayer, TForm içinde değil. Yani form üzerine konulmuş bir bileşen değil.
Re: XE7 de import yapma
Merhaba
Verdiğim örneği deneyip öyle sundum. Bu kodu boş bir projede deneyin, sonucu gördükten sonra aslında forma bileşen bırakmaktan farklı olmadığını göreceksiniz. TLB dosyasında sınıfa ait tüm property içeriği mevcut. Boyutlandırma, görüntüleme, dosya seçme vb. görsel olmasa da küçük bir çalışma ile sonuç elde edebileceğiniz basitlikte.
Sıkıntı olursa uygun zamanda proje olarak buradan bir tane daha paylaşırım.
Verdiğim örneği deneyip öyle sundum. Bu kodu boş bir projede deneyin, sonucu gördükten sonra aslında forma bileşen bırakmaktan farklı olmadığını göreceksiniz. TLB dosyasında sınıfa ait tüm property içeriği mevcut. Boyutlandırma, görüntüleme, dosya seçme vb. görsel olmasa da küçük bir çalışma ile sonuç elde edebileceğiniz basitlikte.
Sıkıntı olursa uygun zamanda proje olarak buradan bir tane daha paylaşırım.
Re: XE7 de import yapma
mrmarman yazdı:Merhaba
Verdiğim örneği deneyip öyle sundum. Bu kodu boş bir projede deneyin, sonucu gördükten sonra aslında forma bileşen bırakmaktan farklı olmadığını göreceksiniz. TLB dosyasında sınıfa ait tüm property içeriği mevcut. Boyutlandırma, görüntüleme, dosya seçme vb. görsel olmasa da küçük bir çalışma ile sonuç elde edebileceğiniz basitlikte.
Sıkıntı olursa uygun zamanda proje olarak buradan bir tane daha paylaşırım.
Hocam sıfır bir proje oluşturdum ama olmadı, merakla proje bekliyorum saygılarımla....
Kod: Tümünü seç
unit MediaPlayer;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, WMPLib_TLB, Vcl.Buttons, Vcl.ExtCtrls;
type
TForm1 = class(TForm)
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
Panel1: TPanel;
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
Var
XMediaPlayer: TWindowsMediaPlayer;
procedure TForm1.SpeedButton1Click(Sender: TObject);
var
Media: IWMPMedia;
begin
with XMediaPlayer do
begin
XMediaPlayer := TWindowsMediaPlayer.Create(nil);
XMediaPlayer.ParentWindow := Form1.Handle;
XMediaPlayer.URL := 'C:\Users\Public\Videos\Sample Videos\Yabani hayat.wmv';
XMediaPlayer.uiMode := 'invisible';
XMediaPlayer.Controls.Play;
end;
end;
procedure TForm1.SpeedButton2Click(Sender: TObject);
begin
if Assigned(XMediaPlayer) AND (XMediaPlayer.playState = wmppsPlaying) then
begin
XMediaPlayer.Controls.stop;
XMediaPlayer.close;
XMediaPlayer.Free;
XMediaPlayer := Nil;
ShowMessage('Player durduruldu...');
end
else
ShowMessage('ne oldu bilemedim...');
end;
Re: XE7 de import yapma

Örnek kaynak kodlu proje için bu linke tıklayın.

Kaynak Kodları
Kod: Tümünü seç
uses WMPLib_TLB;
Var
xMediaPlayer : TWindowsMediaPlayer;
Procedure DosyaOynat( strDosya : TFileName; GosteriPanel: TPanel );
begin
if xMediaPlayer <> Nil then
begin
xMediaPlayer.Visible := False;
xMediaPlayer.controls.stop;
xMediaPlayer.close;
xMediaPlayer.Free;
xMediaPlayer := Nil;
end;
xMediaPlayer := TWindowsMediaPlayer.Create(nil);
xMediaPlayer.Parent := GosteriPanel;
xMediaPlayer.ParentWindow := GosteriPanel.Handle;
xMediaPlayer.OnPlayStateChange := Form1.PlayerPlayStateChange;
xMediaPlayer.Visible := false;
xMediaPlayer.uiMode := 'none'; // Kontrolleri kapatır... // 'invisible' de olabilir.
xMediaPlayer.Cursor := GosteriPanel.Cursor;
xMediaPlayer.windowlessVideo := true;
xMediaPlayer.enableContextMenu := false;
xMediaPlayer.stretchToFit := true;
xMediaPlayer.settings.enableErrorDialogs := false;
xMediaPlayer.settings.autoStart := false;
xMediaPlayer.settings.invokeURLs := false;
xMediaPlayer.URL := strDosya;
xMediaPlayer.controls.play;
while xMediaPlayer.playState <> wmppsPlaying do
begin
Sleep(1);
Application.ProcessMessages;
end;
xMediaPlayer.Visible := True;
xMediaPlayer.SetBounds( 10, 10, GosteriPanel.Width-20, GosteriPanel.Height-20);// .DisplayRect := Rect(0, 0, 400, 300);
end;
procedure PlayerDurdur;
begin
if Assigned(xMediaPlayer) then
begin
xMediaPlayer.Visible := False;
xMediaPlayer.controls.stop;
xMediaPlayer.close;
xMediaPlayer.Free;
xMediaPlayer := Nil;
end;
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
Var
strDosya : String;
begin
With TOpenDialog.Create(nil) do
begin
Filter := 'MP4 Video Dosyaları *.MP4|*.MP4|MP3 Müzik Dosyaları *.MP3|*.MP3';
FilterIndex := 1;
if Execute then
begin
strDosya := FileName;
Memo1.Lines.Add( 'Oynatılacak Dosya : ' + strDosya );
DosyaOynat( strDosya, Panel1 );
end;
Free;
end;
end;
procedure TForm1.PlayerPlayStateChange (ASender: TObject; NewState: Integer);
Var
strDurum : String;
begin
strDurum := '.';
case NewState of
wmppsUndefined : strDurum := 'Tanımsız...';
wmppsStopped : strDurum := 'Durdu';
wmppsPaused : strDurum := 'Pause Edildi...';
wmppsPlaying : strDurum := 'Çalınıyor...';
wmppsScanForward : strDurum := 'İleri sardırma';
wmppsScanReverse : strDurum := 'Geri sardırma';
wmppsBuffering : strDurum := 'Tamponlanıyor..';
wmppsWaiting : strDurum := 'Beklemede';
wmppsMediaEnded : strDurum := 'Çalma işlemi sona erdi.';
wmppsTransitioning : strDurum := 'Veri alış verişinde.';
wmppsReady : strDurum := 'Hazır';
wmppsReconnecting : strDurum := 'Tekrar bağlantı kuruluyor';
wmppsLast : strDurum := 'Sonda';
end;
Label1.Caption := 'Durum = ' + strDurum;
Memo1.Lines.Add( strDurum );
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
PlayerDurdur;
end;
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
PlayerDurdur;
end;
Re: XE7 de import yapma
Eline sağlaık hocam 
Son sorum hocam, eskiden tvlerin veya radyoların mms kodlarıyla media playda çalıştırabiliyorduk, fakat bir çok mms link denedim ama hiç biri çalışmıyor ben neyi atladım acaba?
Urllerde işe yaramıyor...
http://www.atv.com.tr/WEBTV/CANLI-YAYIN
http://fox.com.tr/canli-yayin
http://www.startv.com.tr/canli-yayin
http://www.showtv.com.tr/canliyayin

Son sorum hocam, eskiden tvlerin veya radyoların mms kodlarıyla media playda çalıştırabiliyorduk, fakat bir çok mms link denedim ama hiç biri çalışmıyor ben neyi atladım acaba?
Urllerde işe yaramıyor...
http://www.atv.com.tr/WEBTV/CANLI-YAYIN
http://fox.com.tr/canli-yayin
http://www.startv.com.tr/canli-yayin
http://www.showtv.com.tr/canliyayin
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
begin
If xMediaPlayer.playState = 3 then
begin
xMediaPlayer.close;
end
else
begin
xMediaPlayer.URL := 'mms://212.175.166.3/TV1'; // TRT1
end;
end;
Re: XE7 de import yapma
Merhaba.
- Bu soruyu sormadan önce Windows Media Player'in bizatihi kendisini açıp denedin mi ?!
- Senin için Google ile araştırdım, cevap basitmiş ref. bu Microsoft linki der ki "Windows Media Player 11, Microsoft Media Server (MMS) protokolü artık desteklememektedir."
- Bu linkleri de yine senin için vakit ayırarak baktım. Aslında bunu da senin araştırman gerekirdi bunun da altını çiziyorum, her birisi rtmp streaming protokolüne geçmişler. Böylece daha az veri yükü ile daha fazla kullanıcıya ulaşılıyor.
- Bu konuları daha önce paylaştım. VLC player ile ilgili örnek proje de sundum. Forumda araştırıp inceleyebilirsin.
- Lütfen bir sonraki sorunu sorarken daha seçici olmayı deneylim. Şunu unutmayın. Bir projeye başlamadan önce çerçevenizi çizip öyle başlayın. Bugün ne yapsam, hadi Video Player yapayım diyerek başlamışsanız hatalı bir giriş yapmışsınız demektir.
- Daha Delphi cephesine varmadan, öncelikle araştırmanız gerek soruları sırasıyla yazıyorum.
- Yayın nedir,
- Video nedir, WEB üzerinden yayın türleri nelerdir,
- Streaming nedir,
- Protokol nedir,
- Geolocation limitleme nedir,
- Radyo ile Video playlist nasıl oluşur (M3U) / (M3U8)
- .. gerisi SilverLight / Flash video yapısal karşılaştırmaları vs. vs. vs. gider.
- Ben yayıncı olduğum için uzun zamandır bunları biliyor ve uyguluyorum. Şimdi bunu bana anlat dersen TV tarihinden girerim sen de sıkılır hemen projeyi yaz da ver dersin...
- Sana kızmıyorum ama bir kardeşin olarak bunların en az yarısını bilmeden projeye ara vermelisin derim.
- Bu soruyu sormadan önce Windows Media Player'in bizatihi kendisini açıp denedin mi ?!
- Senin için Google ile araştırdım, cevap basitmiş ref. bu Microsoft linki der ki "Windows Media Player 11, Microsoft Media Server (MMS) protokolü artık desteklememektedir."
- Bu linkleri de yine senin için vakit ayırarak baktım. Aslında bunu da senin araştırman gerekirdi bunun da altını çiziyorum, her birisi rtmp streaming protokolüne geçmişler. Böylece daha az veri yükü ile daha fazla kullanıcıya ulaşılıyor.
- Bu konuları daha önce paylaştım. VLC player ile ilgili örnek proje de sundum. Forumda araştırıp inceleyebilirsin.
- Lütfen bir sonraki sorunu sorarken daha seçici olmayı deneylim. Şunu unutmayın. Bir projeye başlamadan önce çerçevenizi çizip öyle başlayın. Bugün ne yapsam, hadi Video Player yapayım diyerek başlamışsanız hatalı bir giriş yapmışsınız demektir.
- Daha Delphi cephesine varmadan, öncelikle araştırmanız gerek soruları sırasıyla yazıyorum.
- Yayın nedir,
- Video nedir, WEB üzerinden yayın türleri nelerdir,
- Streaming nedir,
- Protokol nedir,
- Geolocation limitleme nedir,
- Radyo ile Video playlist nasıl oluşur (M3U) / (M3U8)
- .. gerisi SilverLight / Flash video yapısal karşılaştırmaları vs. vs. vs. gider.
- Ben yayıncı olduğum için uzun zamandır bunları biliyor ve uyguluyorum. Şimdi bunu bana anlat dersen TV tarihinden girerim sen de sıkılır hemen projeyi yaz da ver dersin...
- Sana kızmıyorum ama bir kardeşin olarak bunların en az yarısını bilmeden projeye ara vermelisin derim.
Re: XE7 de import yapma
mrmarman yazdı:Merhaba.
- Bu soruyu sormadan önce Windows Media Player'in bizatihi kendisini açıp denedin mi ?!
- Senin için Google ile araştırdım, cevap basitmiş ref. bu Microsoft linki der ki "Windows Media Player 11, Microsoft Media Server (MMS) protokolü artık desteklememektedir."
- Bu linkleri de yine senin için vakit ayırarak baktım. Aslında bunu da senin araştırman gerekirdi bunun da altını çiziyorum, her birisi rtmp streaming protokolüne geçmişler. Böylece daha az veri yükü ile daha fazla kullanıcıya ulaşılıyor.
- Bu konuları daha önce paylaştım. VLC player ile ilgili örnek proje de sundum. Forumda araştırıp inceleyebilirsin.
- Lütfen bir sonraki sorunu sorarken daha seçici olmayı deneylim. Şunu unutmayın. Bir projeye başlamadan önce çerçevenizi çizip öyle başlayın. Bugün ne yapsam, hadi Video Player yapayım diyerek başlamışsanız hatalı bir giriş yapmışsınız demektir.
- Daha Delphi cephesine varmadan, öncelikle araştırmanız gerek soruları sırasıyla yazıyorum.
- Yayın nedir,
- Video nedir, WEB üzerinden yayın türleri nelerdir,
- Streaming nedir,
- Protokol nedir,
- Geolocation limitleme nedir,
- Radyo ile Video playlist nasıl oluşur (M3U) / (M3U8)
- .. gerisi SilverLight / Flash video yapısal karşılaştırmaları vs. vs. vs. gider.
- Ben yayıncı olduğum için uzun zamandır bunları biliyor ve uyguluyorum. Şimdi bunu bana anlat dersen TV tarihinden girerim sen de sıkılır hemen projeyi yaz da ver dersin...
- Sana kızmıyorum ama bir kardeşin olarak bunların en az yarısını bilmeden projeye ara vermelisin derim.
Hocam windows media play değil de twebbrowser üzerinden daha kolay olmaz mı?
Re: XE7 de import yapma
Soruda mediaplayer soruldu diye örnekledim.
Haklısın en makul çözüm webbrowser içinden kullanım. Player olarak html bloğunu string ifade olarak oluşturup kullanılır.
Haklısın en makul çözüm webbrowser içinden kullanım. Player olarak html bloğunu string ifade olarak oluşturup kullanılır.