Bonjour à tous

Je vous explique mon problème

Je travaille sous C++ Builder et je désire faire lire en boucle plusieurs vidéos en même temps. Si j'utilise le composant MediaPlayer classique, ca rame.

Je me suis donc tourné vers le composant ActivX WindowsMediaPlayer pour lequel on peut spécifier le mode de lecture en boucle (setMode).

Or, je n'arrive justement pas à affecter le Mode en C++. Voir ici sur le forum C++Builder

J'ai essayer de faire la même chose en Delphi et là, aucun problème tout fonctionne et sans ramer.

Je voudrais donc si cela est possible créer une DLL en Delphi permettant la création d'un TWindowsMediaPlayer avec effectation du Mode à loop.

Voilà donc ce que j'ai écrit

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
library DLLMediaPlayer;
uses
  SysUtils,
  Classes,
  WMPLib_TLB in 'c:\program files\borland\bds\4.0\Imports\WMPLib_TLB.pas';
 
{$R *.res}
 
function CreerMediaPlayer(Appelant: TComponent):TWindowMediaPlayer;export;
var
  MediaPlayer: TWindowsMediaPlayer;
begin
  // On crée le MediaPlayer
  MediaPlayer := TWindowsMediaPlayer.Create(Appelant);
 
  // On renseigne son mode de lecture
  MediaPlayer.settings.setMode('loop', True);
 
  // On affecte le MediaPlayer comme retour de la fonction
  CreerMediaPlayer := MediaPlayer;
end;
exports CreerMediaPlayer;
 
 
begin
 
 
end.
Quand j'appelle ma fonction après l'avoir déclarer comme importer de la DLL, j'ai une erreur comme quoi je ne peux pas convertir un TWindowsMediaPlayer en TWindowsMediaPlayer *

J'ai besoin d'un pointeur sur un TWindowsMediaPlayer, comme puis-je faire pour que ma fonction m'en retourne un

Merci d'avance