|
Antwort |
Registriert seit: 25. Mär 2009 Ort: Dresden 168 Beiträge Delphi 10.3 Rio |
#1
Ich habe TWindowsMediaPlayer installiert entsprechend der Hinweise in folgendem Link
http://www.entwickler-ecke.de/topic_...0.html?view=df Wenn ich nun ganz einfach diesen WindowsMediaplayer in ein kleines Projekt einfüge, sehe ich eine Menge Procedure, Functionen usw., deren Bedeutung aber ziemlich unklar ist, auch viele Dateitypen... Leider sagt die Hilfe dazu nichts aus. Ich habe mal alle Komponenten zusammengestellt. Kennt jemand eine Beschreibung zur Nutzung dieser Parameter ?
Delphi-Quellcode:
procedure launchURL(const bstrURL:WideString);
function newPlaylist(const bstrName: WideString; const bstrURL: WideString) : IWMPPlaylist; function newMedia(const bstrURL: WideString) : IWMPMedia; procedure openPlayer(const bstrURL: WideString); property ControlInterface : IWMPPlayer4; proberty DefaultInterface : IWMPPlayer4; proberty openState : TOleEnum; proberty playState : TOleEnum; proberty controls : IWMPControls; proberty settings : IWMPSettings; proberty mediaCollection : IWMPMediaCollection; proberty playlistCollection : IWMPPlaylistCollection; proberty versionInfo : WideString; proberty network : IWMPNetwork; proberty cdromCollection : IWMPCdromCollection; proberty closedCaption : IWMPClosedCaption; proberty isOnline : WordBool; proberty Error : IWMPErrir; proberty status : WideString; proberty dvd : IWMPDVD; proberty isRemote : WordBool; proberty playerApplication : IWMPPlayerApplication; proberty Anchors : TAnchors; proberty TabStop : Boolean; proberty Align : TAlign; proberty DragCursor : TCursor; proberty DragMode : TDragMode; proberty ParentShowHint : Boolean; proberty PopupMenu : TPopupMenu; proberty ShowHint : Boolean; proberty TabOrder : TTabOrder; proberty Visible : Boolean; proberty OnDragDrop : TDragDropEvent; proberty OnDragOver : TDragOverEvent; proberty OnEndDrag : TEndDragEvent; proberty OnEnter : TNotifyEvent; proberty OnExit : TNotifyEvent; proberty OnStartDrag : TStartDragEvent; proberty URL : WideString; proberty currentMedia : IWMPMedia; proberty currentPlaylist : IWMPPlaylist; proberty enabled : WordBool; proberty fullScreen : WordBool; proberty enableContexMenu : WordBool; proberty uiMode : WideString; proberty strechToFit : WordBool; proberty windowlessVideo : WordBool; proberty OnOpenStateChange : TWindowsMediaPlayerOpenStateChange; proberty OnPlayStateChange : TWindowsMediaPlayerPlayStateChange; proberty OnAudioLanguageChange : TWindowsMediaPlayerAudioLangueChange; proberty OnStatusChange : TNotifyEvent; proberty OnScriptCommand : TWindowsMediaPlayerScriptCpmmand; proberty OnNewStream : TNotifyEvent; proberty OnDisconnect : TWindowsMediaPlayerDisconnect; proberty OnBuffering : TWindowsMediaPlayerBuffering; proberty OnError : TNotifyEvent; proberty OnWarning : TWindowsMediaPlayerWarning; proberty OnEndOfStream : TWindowsMediaPlayerEndOfStream; proberty OnPositionChange : TWindowsMediaPlayerPositionChange; proberty OnMarkerHit : TWindowsMediaPlayerMarkerHit; proberty OnDurationUnitChange : TWindowsMediaPlayerDurationUnitChange; proberty OnCdromMediaChange : TWindowsMediaPlayerCdromMediaChange; proberty OnPlaylistChange : TWindowsMediaPlayerPlaylistChange; proberty OnCurrentPlaylistChange : TWindowsMediaPlayerCurrentPlaylistChange; proberty OnCurrentPlaylistItemAvailable : TWindowsMediaPlayerCurrentPlaylistItemAvailable; proberty OnMediaChange : TWindowsMediaPlayerMediaChange; proberty OnCurrentMediaItemAvailable : TWindowsMediaPlayerCurrentMediaItemAvailable; proberty OnCurrentItemChange : TWindowsMediaPlayerCurrentItemChange; proberty OnMediaCollectionChange : TNotifyEvent; proberty OnMediaCollectionAttributeStringAdded : TWindowsMediaPlayerMediaCollectionAttributeStringAdded; proberty OnMediaCollectionAttributeStringRemoved : TWindowsMediaPlayerMediaCollectionAttributeStringRemoved; proberty OnMediaCollectionAttributeStringChanged : TWindowsMediaPlayerMediaCollectionAttributeStringChanged; proberty OnPlaylistCollectionChange : TNotifyEvent; proberty OnPlaylistCollectionPlaylistAdded : TWindowsMediaPlayerPlaylistCollectionPlaylistAdded; proberty OnPlaylistCollectionPlaylistRemoved : TWindowsMediaPlayerPlaylistCollectionPlaylistRemoved; proberty OnPlaylistCollectionPlaylistSetAsDeleted : TWindowsMediaPlayerPlaylistCollectionPlaylistSetAsDeleted; proberty OnModeChange : TWindowsMediaPlayerModeChange; proberty OnMediaError : TWindowsMediaPlayerMediaError; proberty OnOpenPlaylistSwitch : TWindowsMediaPlayerOpenPlaylistSwitch; proberty OnDomainChange : TWindowsMediaPlayerDomainChange; proberty OnSwitchedToPlayerApplication : TNotifyEvent; proberty OnSwitchedToControl : TNotifyEvent; proberty OnPlayerDockedSateChange : TNotifyEvent; proberty OnPlayerReconnect : TNotifyEvent; proberty OnClick : TWindowsMediaPlayerClick; proberty OnDoubleClick : TWindowsMediaPlayerDoubleClick; proberty OnKeyDown : TWindowsMediaPlayerKeyDown; proberty OnKeyPress : TWindowsMediaPlayerKeyPress; proberty OnKeyUp : TWindowsMediaPlayerKeyUp; proberty OnMouseDown : TWindowsMediaPlayerMouseDown; proberty OnMouseMove : TWindowsMediaPlayerMouseMove; proberty OnMouseUp : TWindowsMediaPlayerMouseUp; proberty OnDeviceConnect : TWindowsMediaPlayerDeviceConnect; proberty OnDeviceDisconnect : TWindowsMediaPlayerDeviceDisconnect; proberty OnDeviceStatusChange : TWindowsMediaPlayerDeviceStatusChange; proberty OnDeviceSyncStateChange : TWindowsMediaPlayerDeviceSyncStateChange; proberty OnDeviceSyncError : TWindowsMediaPlayerDeviceSyncError; proberty OnCreatePartnershipComplete : TWindowsMediaPlayerCreatePartnershipComplete; proberty OnCdromRipStateChange : TWindowsMediaPlayerCdromRipStateChange; proberty OnCdromRipMediaError : TWindowsMediaPlayerCdromRipMediaError; proberty OnCdromBurnStateChange : TWindowsMediaPlayerCdromBurnStateChange; proberty OnCdromBurnMediaError : TWindowsMediaPlayerCdromBurnMediaError; proberty OnCdromBurnError : TWindowsMediaPlayerCdromBurnError; proberty OnLibraryConnect : TWindowsMediaPlayerLibraryConnect; proberty OnLibraryDisconnect : TWindowsMediaPlayerLibraryDisconnect; proberty OnFolterScanStateChange : TWindowsMediaPlayerFolterScanStateChange; proberty OnStringCollectionChange : TWindowsMediaPlayerStringCollectionChange; proberty OnMediaCollectionMediaAdded : TWindowsMediaPlayerMediaCollectionMediaAdded; proberty OnMediaCollectionMediaRemoved : TWindowsMediaPlayerMediaCollectionMediaRemoved constructor Create(AOwner : TComponent); procedure launchURL(const bstrURL : WideString); function newPlaylist(const bstrName : WideString; const bstrURL : WideString) : IWMPPlaylist; function newMedia(const bstrURL : WideString) : IWMPMedia; procedure openPlayer(const bstrURL : WideString); proberty ControlInterface : IWMPPlayer4; proberty DefaultInterface : IWMPPlayer4; proberty openState : TOleEnum; proberty playState : TOleEnum; proberty controls : IWMPControls; proberty settings : IWMPSettings; proberty mediaCollection : IWMPMediaCollection; proberty playlistCollection : IWMPPlaylistCollection; proberty versionInfo : WideString; proberty network : IWMPNetwork; proberty cdromCollection : IWMPCdromCollection; proberty closedCaption : IWMPClosedCaption; proberty isOnline : WordBool; proberty Error : IWMPError; proberty status : WideString; proberty dvd : IWMPDVD; proberty isRemote : WordBool; proberty playerApplication : IWMPPlayerApplication; proberty Anchors : TAnchors; proberty TabStop : Boolean; proberty Align : TAlign; proberty DragCursor : TCursor; proberty DragMode : TDragMode; proberty ParentShowHint : Boolean; proberty PopupMenu : TPopupMenu; proberty ShowHint : Boolean; proberty TabOrder : TTabOrder; proberty Visible : Boolean; proberty OnDragDrop : TDragDropEvent; proberty OnDragOver : TDragOverEvent; proberty OnEndDrag : TEndDragEvent; proberty OnEnter : TNotifyEvent; proberty OnExit : TNotifyEvent; proberty OnStartDrag : TStartDragEvent; proberty URL : WideString; proberty currentMedia : IWMPMedia; proberty currentPlaylist : IWMPPlaylist; proberty enabled : WordBool; proberty fullScreen : WordBool; proberty enableContextMenu : WordBool; proberty uiMode : WideString; proberty stretchToFit : WordBool; proberty windowlessVideo : WordBool; proberty OnOpenStateChange : TWindowsMediaPlayerOpenStateChange; proberty OnPlayStateChange : TWindowsMediaPlayerPlayStateChange; proberty OnAudioLanguageChange : TWindowsMediaPlayerAudioLanguageChange; proberty OnStatusChange : TNotifyEvent; proberty OnScriptCommand : TWindowsMediaPlayerScriptCommand; proberty OnNewStream : TNotifyEvent; proberty OnDisconnect : TWindowsMediaPlayerDisconnect; proberty OnBuffering : TWindowsMediaPlayerBuffering; proberty OnError : TNotifyEvent; proberty OnWarning : TWindowsMediaPlayerWarning; proberty OnEndOfStream : TWindowsMediaPlayerEndOfStream; proberty OnPositionChange : TWindowsMediaPlayerPositionChange; proberty OnMarkerHit : TWindowsMediaPlayerMarkerHit; proberty OnDurationUnitChange : TWindowsMediaPlayerDurationUnitChange; proberty OnCdromMediaChange : TWindowsMediaPlayerCdromMediaChange; proberty OnPlaylistChange : TWindowsMediaPlayerPlaylistChange; proberty OnCurrentPlaylistChange : TWindowsMediaPlayerCurrentPlaylistChange; proberty OnCurrentPlaylistItemAvailable : TWindowsMediaPlayerCurrentPlaylistItemAvailable; proberty OnMediaChange : TWindowsMediaPlayerMediaChange; proberty OnCurrentMediaItemAvailable : TWindowsMediaPlayerCurrentMediaItemAvailable; proberty OnCurrentItemChange : TWindowsMediaPlayerCurrentItemChange; proberty OnMediaCollectionChange : TNotifyEvent; proberty OnMediaCollectionAttributeStringAdded : TWindowsMediaPlayerMediaCollectionAttributeStringAdded; proberty OnMediaCollectionAttributeStringRemoved : TWindowsMediaPlayerMediaCollectionAttributeStringRemoved; proberty OnMediaCollectionAttributeStringChanged : TWindowsMediaPlayerMediaCollectionAttributeStringChanged; proberty OnPlaylistCollectionChange : TNotifyEvent; proberty OnPlaylistCollectionPlaylistAdded : TWindowsMediaPlayerPlaylistCollectionPlaylistAdded; proberty OnPlaylistCollectionPlaylistRemoved : TWindowsMediaPlayerPlaylistCollectionPlaylistRemoved; proberty OnPlaylistCollectionPlaylistSetAsDeleted : TWindowsMediaPlayerPlaylistCollectionPlaylistSetAsDeleted; proberty OnModeChange : TWindowsMediaPlayerModeChange; proberty OnMediaError : TWindowsMediaPlayerMediaError; proberty OnOpenPlaylistSwitch : TWindowsMediaPlayerOpenPlaylistSwitch; proberty OnDomainChange : TWindowsMediaPlayerDomainChange; proberty OnSwitchedToPlayerApplication : TNotifyEvent; proberty OnSwitchedToControl : TNotifyEvent; proberty OnPlayerDockedStateChange : TNotifyEvent; proberty OnPlayerReconnect : TNotifyEvent; proberty OnClick : TWindowsMediaPlayerClick; proberty OnDoubleClick : TWindowsMediaPlayerDoubleClick; proberty OnKeyDown : TWindowsMediaPlayerKeyDown; proberty OnKeyPress : TWindowsMediaPlayerKeyPress; proberty OnKeyUp : TWindowsMediaPlayerKeyUp; proberty OnMouseDown : TWindowsMediaPlayerMouseDown; proberty OnMouseMove : TWindowsMediaPlayerMouseMove; proberty OnMouseUp : TWindowsMediaPlayerMouseUp; proberty OnDeviceConnect : TWindowsMediaPlayerDeviceConnect; proberty OnDeviceDisconnect : TWindowsMediaPlayerDeviceDisconnect; proberty OnDeviceStatusChange : TWindowsMediaPlayerDeviceStatusChange; proberty OnDeviceSyncStateChange : TWindowsMediaPlayerDeviceSyncStateChange; proberty OnDeviceSyncError : TWindowsMediaPlayerDeviceSyncError; proberty OnCreatePartnershipComplete : TWindowsMediaPlayerCreatePartnershipComplete; proberty OnCdromRipStateChange : TWindowsMediaPlayerCdromRipStateChange; proberty OnCdromRipMediaError : TWindowsMediaPlayerCdromRipMediaError; proberty OnCdromBurnStateChange : TWindowsMediaPlayerCdromBurnStateChange; proberty OnCdromBurnMediaError : TWindowsMediaPlayerCdromBurnMediaError; proberty OnCdromBurnError : TWindowsMediaPlayerCdromBurnError; proberty OnLibraryConnect : TWindowsMediaPlayerLibraryConnect; proberty OnLibraryDisconnect : TWindowsMediaPlayerLibraryDisconnect; proberty OnFolderScanStateChange : TWindowsMediaPlayerFolderScanStateChange; proberty OnStringCollectionChange : TWindowsMediaPlayerStringCollectionChange; proberty OnMediaCollectionMediaAdded : TWindowsMediaPlayerMediaCollectionMediaAdded; proberty OnMediaCollectionMediaRemoved : TWindowsMediaPlayerMediaCollectionMediaRemoved; constructor Create(AOwner : TComponent); destructor Destroy; procedure BrowseProperties; procedure Defaulthandler(var Message : Ohne Typ); procedure DoObjectverb(Verb : Integer); function GetEnumpropDesc(Displ : Integer) : TEnumPropDesc; function getHelpContext(Member : String; var HelpCtx : Integer; var HelpFile : String) : Boolean; procedure GetObjectVerbs(List : TStrings); function GetPropDisplayString(DispID : Integer) : String; procedure GetPropDisplayStrings(DispID : Integer; List : TStrings); fuction IsCustomProberty(DisplID : Integer) : Boolean; function IsPropPageProperty(DisplID : Integer) : Boolean; Procedure SetBounds(ALeft : Integer; ATop : Integer; AWidth : Integer; AHeight : Integer); Procedure SetPropDisplayString(DisplID : Integer; const Value : String); Procedure ShowAboutBox; proberty OleObject : Variant; proberty PerPropBrowsing :IPerPropertyBrowsing; proberty DefaultDispatch : IDispatch; constructor CreateParented(ParentWindow : HWND); function CreateParentedControl(ParentWindow : HWND) : TWinControl procedure Broadcast(var Message : Ohne Typ); function CanFocus : Boolean; function ContainsControl(Control : TControl) : Boolean; function ControlAtPos(const Pos : TPoint; AllowDisabled : Boolean; AllowWinControls : Boolean = False) : TControl; procedure DisableAlign; proberty DockClientCount : Integer; proberty DockClients : [Index : Integer] : TControl; procedure DockDrop (Source : TDragDockObject; X : Integer; Y : Integer); proberty DoubleBuffered : Boolean; procedure EnableAlign; function FindChildControl(const ControlName : String) : TControl; procedure FlipChildren(AllLevels : Boolean); function Focused : Boolean; procedure GetTaborderList(List : TList); function HandleAllocated : Boolean; procedure HandleNeeded; procedure InsertControl(AControl : TControl); procedure Invalidate; procedure PaintTo(DC : HDC; X : Integer; Y : Integer); procedure PaintTo(Canvas : TCanvas; X : Integer; Y : Integer); procedure RemoveControl(AControl : TControl); procedure Realign; procedure Repaint; procedure ScaleBy(M : Integer; D : Integer); procedure Scrollby(DeltaX : Integer; DeltaY : Integer); procedure SetFocus; procedure Update; procedure UpdateControlState; proberty AllignDisabled : Boolean; proberty VisibleDockClientCount : Integer; proberty Brush : TBrush; proberty ControlCount : Integer; proberty Handle : HWND; proberty ParentWindow : HWND; proberty Showing : Boolean; procedure BeginDrag(Immediate : Boolean; Threshold : Integer = 1); procedure BringToFront; function ClientToScreen(const Point : TPoint) : TPoint; function ClientToParent(const Point : TPoint; AParent : TWinControl = nil) : TPoint; procedure Dock(NewDockSite : TWinControl; ARect : TRect); function Dragging : Boolean; procedure DragDrop(Source : TObject; X : Integer; Y : Integer); function DrawTextBiDiModeFlags(Flags : Integer) : Integer; function DrawTextBiDiModeFlagsReadingOnly : Integer; procedure EndDrag(Drop : Boolean); function GetControlsAlignment : TAlignment; function GetParentComponent : TComponent; function GetTextBuf(Buffer : PAnsiChar; BufSize : Integer) : Integer; function GetTextLen : Integer; function HasParent : Boolean; procedure Hide; procedure InitiateAction; procedure MouseWheelHandler(var Message : TMessage); function IsRightToleft : Boolean; function ManualDock(NewDockSite : TWinControl; DropControl : TControl = nil; ControlSide : TAlign = aNone) : Boolean; function ManualFloat(ScreenPos : TRect) : Boolean; function Perform(Msg : Cardinal; WParam : Integer; LParam : Integer) : Integer; procedure Refresh; function ReplaceDockedControl(Control : TControl; NewDockSite : TWinControl; DropControl : TControl; ControlSide : TAlign) : Boolean; function ScreenToClient(const Point : TPoint) : TPoint; function ParentToClient(const Point : TPoint; AParent : TWinControl = nil) : TPoint; procedure SendToBack; procedure SetTextBuf(Buffer : PAnsiChar); procedure Show; function UseRightToLeftAlignment : Boolean; function UseRightToLeftReading : Boolean; function UseRightToLeftScrollBar : Boolean; proberty Action : TBasicAction; proberty BiDiMode : TBiDiMode; proberty BoundsRect : TRect; proberty ClientHeight : Integer; proberty ClientOrigin : TPoint; proberty ClientRect : TRect; proberty ClientWidth : Integer; proberty Constraints : TSizeConstraints; proberty ControlState : TControlState; proberty ControlStyle : TControlStyle; proberty DockOrientation : TDockOrientation; proberty Floating : Boolean; proberty FloatingDockSiteClass : TWinControlClass; proberty HostDockSite : TWinControl; proberty LRDockSite : Integer; proberty Parent : TWinControl; proberty TBDockHeight : Integer; proberty UndockHight : Integer; proberty UndockWidth : Integer; proberty WindowProc : TWndMethod; proberty Left : Integer; proberty Top : Integer; proberty Width : Integer; proberty Height : Integer; proberty Cursor : TCursor; proberty Hint : String; proberty HelpType : THelptype; proberty HelpKeyword : String; proberty HelpContex : THelpContex; procedure BeforeDestruction; procedure DestroyComponents; procedure Destroying; function ExecuteAction(Action : TBasicAction) : Boolean; function FindComponent(const AName : String) : TComponent; procedure FreeNotification(AComponent : TComponent); procedure RemoveFreeNotification(AComponent : TComponent); procedure FreeOnRelease; function GetNamePath : String; procedure InsertComponent(AComponent : TComponent); procedure RemoveComponent(AComponent : TComponent); procedure SetSubComponent(IsSubComponent : Boolean); function SafeCallException(ExceptObject : TObject; ExceptAddr : Pointer) : HRESULT; function UpdateAction(Action : TBasicAction) : Boolean; function IsImplementorOf(const I : IInterface) : Boolean; function ReferenceInterface(const I : IInterface; Operation : TOperation) : Boolean proberty ComObject : IInterface; proberty Components : [Index : Integer] : TComponent; proberty ComponentCount : Integer; proberty ComponentIndex : Integer; proberty ComponentState : TComponentState; proberty ComponentStyle : TComponentStyle; proberty DesignInfo : Integer; proberty Owner : TComponent; proberty VCLComObject : Pointer; proberty Name : TComponentName; proberty Tag : Integer; procedure Assign(Source : TPersident); procedure Free; function InitInstance(Instance : Pointer) : TObject; procedure CleanupInstance; function ClassType : TClass; function ClassName : ShortString; function ClassNameIs(const Name : String) : Boolean; function ClassParent : TClass; function ClassInfo : Pointer; function InstanceSize : Integer; function InheritsFrom(AClass : TClass) : Boolean; function MethodAddress(const Name : ShortString) : Pointer; function MethodName(Address : Pointer) : ShortString; function FieldAddress(const Name : ShortString) : Pointer; function GetInterface(const IID : TGUID; out Obj : Ohne Typ) : Boolean; function GetInterfaceEntry(const IID : TGUID) : PInterfaceEntry; function GetInterfaceTable : PInterfaceTable; procedure AfterConstruction; procedure Dispatch(var Message : Ohne Typ); function NewInstance : TObject; procedure FreeInstance;
Hartmut
|
Zitat |
Registriert seit: 25. Mär 2009 Ort: Dresden 168 Beiträge Delphi 10.3 Rio |
#3
Danke Andreas, eine wirkliche Fundgrube ist das aber nicht.
Hartmut
|
Zitat |
Registriert seit: 10. Jun 2003 Ort: Berlin 9.582 Beiträge Delphi 11 Alexandria |
#4
Was fehlt dir denn z.B. konkret dort? Ich habe die Referenz schon ein paarmal genutzt, da war mir nicht aufgefallen, dass etwas fehlt. (Von dem was ich brauchte zumindest, auf den Rest habe ich nicht geschaut.)
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv! |
Zitat |
Registriert seit: 2. Mär 2004 5.508 Beiträge Delphi 5 Professional |
#5
Du wirst wahrscheinlich zur Automatisierungsschnittstelle des Media Player nicht allzuviel Informationen finden, weil:
* die Interfaces ständig weiterentwickelt werden und Infos schneller veralten als sie aufgeschrieben werden können * viele Programmierer von der schlechten Qualität des Media Players abgeschreckt wurden (zumindest früher waren Abstürze an der Tagesordnung; heute könnte die Qualität natürlich wesentlich besser sein)
Andreas
|
Zitat |
Registriert seit: 25. Mär 2009 Ort: Dresden 168 Beiträge Delphi 10.3 Rio |
#6
Ich brauche ein Programm, dem ich über die Kommandozeile den Dateinamen einer Videodatei übergebe. Dieses soll diese Datei abspielen, dabei in den Vollbildmodus schalten und dann, wenn das Abspielen zu Ende ist, sich selbst beenden.
Ich habe dazu mittels Probieren eine Lösung gefunden, die bei mir sowohl auf dem Desctop-PC mit WinXp und Win7prof-64 funktioniert, auch auf meinem Notebook mit Win7-ultimate-64. So richtig gefällt mir das nicht, weil ich dazu die Status-Informationen in Form von deutschem WhiteString abfrage. Im Ausland würde das nicht funktionieren, weil da die Meldungen in englisch, französisch oder russisch kämen und meine Abfrage ins Leere laufen würde. Ich muss zunächst abfragen, ob das Abspielen begonnen hat, weil sonst beim Umschalten in den Vollbildmodus ein Fehler kommt, das darf man nur machen, wenn abgespielt wird. Die zweite Abfrage (über Status) ist die nach dem Ende des Abspielens, um das eigene Programm zu beenden. Ich habe das alles in eine Timer-Routine gepackt, da wird aller Sekunden entsprechend abgefragt - das geht sicherlich viel eleganter. Ich zeige nachfolgend mal meine Lösung...
Delphi-Quellcode:
unit HkMPlayer7u;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, MPlayer, OleCtrls, WMPLib_TLB; type TForm1 = class(TForm) WindowsMediaPlayer1: TWindowsMediaPlayer; Timer1: TTimer; procedure FormCreate(Sender: TObject); procedure Timer1Timer(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; implementation {$R *.dfm} Var qTimer1DL : Boolean = False; qPlayAnf : Boolean = False; iTimerSek : Longint = 0; sStatus : String; sDSN : String; procedure TForm1.FormCreate(Sender: TObject); begin Align := alClient; qTimer1DL := False; qPlayAnf := False; Timer1.Enabled := True; end; procedure TForm1.Timer1Timer(Sender: TObject); begin if not qTimer1DL then Begin qTimer1DL := True; iTimerSek := 0; if ParamCount < 1 then Close; sDSN := ParamStr(1); WindowsMediaPlayer1.URL := sDSN; End; Inc(iTimerSek); sStatus := WindowsMediaPlayer1.status; // WideString Form1.Caption := 'HkMPlayer7 ' + sDSN + ' ' + sStatus; if not qPlayAnf then Begin if Length(sStatus) > 11 then Begin if Copy(sStatus,1,10) = 'Wiedergabe' then Begin qPlayAnf := True; WindowsMediaPlayer1.fullScreen := True; End else if iTimerSek > 30 then Close; End; End; if iTimerSek > 13 then Begin if sStatus = 'Beendet' then Begin Close; End; End; end; end.
Hartmut
|
Zitat |
Registriert seit: 25. Mai 2006 Ort: Rostock / Bremen 2.037 Beiträge Delphi 7 Enterprise |
#8
Mein Tipp:
Lass den Media Player, Media Player sein, und steig stattdessen um auf das DSPack oder gar gleich auf reinen DirectX (DirectShow) Code. Dazu hatte ich auch mal ein bsp. Programm geschrieben, wie so ein DX-Video/Audio Player aufgebaut wird. Den Rest kannst du mit Nachlesen erreichen
Martin
MFG Caleb TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade) |
Zitat |
Ansicht |
Linear-Darstellung |
Zur Hybrid-Darstellung wechseln |
Zur Baum-Darstellung wechseln |
ForumregelnEs ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus. Trackbacks are an
Pingbacks are an
Refbacks are aus
|
|
Nützliche Links |
Heutige Beiträge |
Sitemap |
Suchen |
Code-Library |
Wer ist online |
Alle Foren als gelesen markieren |
Gehe zu... |
LinkBack |
LinkBack URL |
About LinkBacks |