forked from tarcode-apps/BatteryMode
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMedia.Player.pas
More file actions
42 lines (33 loc) · 803 Bytes
/
Media.Player.pas
File metadata and controls
42 lines (33 loc) · 803 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
unit Media.Player;
interface
uses
Winapi.Windows, Winapi.Messages,
System.Classes,
Vcl.MPlayer;
type
TMediaPlayer = class(Vcl.MPlayer.TMediaPlayer)
strict private
FFakeWnd: HWND;
procedure FakeWndHandle(var Msg: TMessage);
public
constructor CreateWithoutUi;
destructor Destroy; override;
end;
implementation
{ TMediaPlayer }
constructor TMediaPlayer.CreateWithoutUi;
begin
Create(nil);
FFakeWnd := AllocateHWnd(FakeWndHandle);
WindowHandle := FFakeWnd;
end;
destructor TMediaPlayer.Destroy;
begin
inherited;
if FFakeWnd <> 0 then DeallocateHWnd(FFakeWnd);
end;
procedure TMediaPlayer.FakeWndHandle(var Msg: TMessage);
begin
Msg.Result := DefWindowProc(FFakeWnd, Msg.Msg, Msg.WParam, Msg.LParam);
end;
end.