2014-04-26 3 views
1

J'ai créé un simple formulaire Windows qui affiche une vidéo avec Microsoft.DirectX.AudioVideoPlayback. Lorsque la vidéo est chargée sur le panneau, elle affiche une fenêtre activemovie pendant quelques millisecondes. Comment je pourrais le réparer parce que c'est ennuyeux à chaque fois que vous commencez à lire une vidéo lance cette fenêtre activemovie. C'est comme si l'application avait du retard.Fenêtre Activemovie pop-up Microsoft.DirectX.AudioVideoPlayback en C#

Voici mon code:

string path = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), @"Photos\test.avi"); 

    var ofd = path; 
    var video = new Video(ofd, true); 
    label3.Text = ofd; 
    video.Owner = panel2; 
    panel2.Size = new System.Drawing.Size(640,480); 
    video.Ending += new EventHandler(videocountdown_Ending); 
    video.Size = new System.Drawing.Size(640, 480); 

enter image description here

Au-dessus est un printscreen quand je presse le bouton qui jouent la vidéo. Je le recadre et je ne vous montre que le panneau sur cette photo.

Répondre

0
video = new Video(ofd, true); 
video.Owner = panel2; 

Vous l'exécutez donc automatiquement avant de vous connecter au panneau? Je suppose que vous le voulez dans l'autre sens: créer, puis Owner chose, puis Play.

video = new Video(ofd, false); 
video.Owner = panel2; 
video.Play(); 

lecture sans initialisation interface utilisateur rend le moteur de rendu vidéo pour rendre la vidéo dans la fenêtre pop-up privée, qui a une légende historique "ActiveMovie", qui célébrera bientôt anniversaire 20 ans ...

+0

je corriger, mais je dois le même problème. Alors comment je pourrais jouer une vidéo avec l'initialisation de l'interface utilisateur sans Microsoft.DirectX.AudioVideoPlayback. Avec le bon rendu et le jeu sans pop-up fenêtre activemovie – NickName

+0

J'ai fait une vérification rapide et je vois que c'est utile comme prévu. Pas de fenêtre contextuelle avec une bonne initialisation 'Owner'. –

+0

J'avais rajouté tes lignes mais il restait des fenêtres pop-up pendant quelques millisecondes la fenêtre activemovie comme l'écran d'impression dans ma question ci-dessus. – NickName