C# - Воспроизведение видео с ресурсов в компоненте wmp

У меня есть компонент wmp в C# Windows Forms, и я хочу, чтобы он воспроизводил видео (.avi) из ресурсов решения. Мне нужно знать код для компонента wmp, чтобы найти видео. Предложения?

1 ответ

Решение

В настоящее время существует способ потоковой передачи файла.

Прежде всего, нам нужно место, где это должно быть всегда возможно

        string streamPath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\";

Следующий шаг - экземпляр MediaPlayer

    WindowsMediaPlayer wmp = new WindowsMediaPlayer();

Затем нам нужно передать ресурс сборки

    Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("Smartis.Resources.Natur.wmv");

    using (Stream output = new FileStream (streamPath + "mediafile.avi", FileMode.Create))
    {
        byte[] buffer = new byte[32*1024];
        int read;

        while ( (read= stream.Read(buffer, 0, buffer.Length)) > 0)
        {
            output.Write(buffer, 0, read);
        }
    }

Наконец мы должны быть в состоянии загрузить файл.

    wmp.URL = streamPath + "mediafile.avi";
    wmp.controls.play();

После игры не забудьте очистить папку:

    File.Delete(streamPath + "mediafile.avi");
Другие вопросы по тегам