Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.52/21: Рейтинг темы: голосов - 21, средняя оценка - 4.52
 Аватар для Filislav
339 / 285 / 62
Регистрация: 02.09.2010
Сообщений: 547

Звук при открытии формы

11.08.2011, 19:49. Показов 4496. Ответов 23
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пытаюсь делать по инструкции из статьи
Подключаем необходимую библиотеку:
using Microsoft.DirectX.AudioVideoPlayback;

Далее создаем экземпляр класса Audio:
C#
1
Audio player = new Audio(file_path);

но, у меня нету Microsoft.DirectX, там после точки другие библиотеки идут. Как мне DirectX подключить?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.08.2011, 19:49
Ответы с готовыми решениями:

Проигрывание музыки при открытии формы
Здравствуйте, у меня такой вопрос: Как при загрузке формы сделать так, чтобы играла музыка?

DataTimePicker при открытии формы пустое значение
как сделать, чтобы при открытии формы..автоматически в DataTimePicker не прописывалась дата, а просто была пустая..

Значение переменных не сохраняется при повторном открытии формы
По совету из форума создал класс в главном классе проекта (главный класс всё время в памяти) static class Data { public...

23
Почетный модератор
 Аватар для Памирыч
23251 / 9163 / 1084
Регистрация: 11.04.2010
Сообщений: 11,014
16.08.2011, 21:58
Студворк — интернет-сервис помощи студентам
Filislav, если звук mp3-шный, то подключи библиотеку wmp.dll
Ее тебе хватит за глаза
Если Wav - вообще ничего подключать не нужно
1
Заблокирован
16.08.2011, 22:02
Памирыч, про mciSendString забыл упомянуть.
C#
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
 using System.Runtime.InteropServices;
 
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        [DllImport("winmm.dll")]
        private static extern long mciSendString(string strCommand, StringBuilder strReturn,
              int iReturnLength, IntPtr hwndCallback);
 
        private string sCommand = "";
 
        private void button1_Click(object sender, EventArgs e)
        {
sCommand = "open \"" + @"F:\музыка\Morcheba - Otherwise.mp3" + "\" type mpegvideo alias MediaFile";
      //посылаем команду
      mciSendString(sCommand, null, 0, IntPtr.Zero);
      //команда для воспроизведения файла
      sCommand = "play MediaFile";
      //посылаем команду
      mciSendString(sCommand, null, 0, IntPtr.Zero);
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            mciSendString("stop MediaFile", null, 0, IntPtr.Zero);
           // mciSendString("pause MediaFile", null, 1, IntPtr.Zero);
        }
 
        private void button3_Click(object sender, EventArgs e)
        {
            mciSendString("close MediaFile", null, 0, IntPtr.Zero);
        }
 
    }
1
Почетный модератор
 Аватар для Памирыч
23251 / 9163 / 1084
Регистрация: 11.04.2010
Сообщений: 11,014
16.08.2011, 22:12
По крайней мере, эта библиотека в каждой системе ну и функционал неплохой.
0
 Аватар для Alessandr
20 / 21 / 1
Регистрация: 13.08.2011
Сообщений: 51
17.08.2011, 08:15
Ну можно же было посмотреть исходники.
Ошибка явно укзаывает что WASAPI только в висте, открываем исходник примера где играется песня и смотрим через что играется и какими данными заполняются поля для выбора устрйоств.
Я столкнулся с этим ранее, на хп вот так:
Для мп3
C#
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
using NAudio;
using NAudio.Wave;
using NAudio.CoreAudioApi;
 
WaveStream mainOutputStream;
IWavePlayer waveOutDevice = new DirectSoundOut(100);
 
WaveStream CreateInputMp3Stream(string fileName)
{
    WaveChannel32 inputStream;
    if (fileName.EndsWith(".mp3"))
    {
        WaveStream mp3Reader = new Mp3FileReader(fileName);
        inputStream = new WaveChannel32(mp3Reader);
    }
    else
    {
        throw new InvalidOperationException("Unsupported extension");
    }
    return inputStream;
}
 
void play(string file)
{
   mainOutputStream = CreateInputMp3Stream(file);
   waveOutDevice.Init(mainOutputStream);
   waveOutDevice.Play();
}
 
void stop()
{
   waveOutDevice.Stop();
}
Только после написания заметил что исходник такой же.
Просто внимательней надо разбирать примеры, идущие с библиотекой, в случае ХП, нужно всего лишь
C#
1
 waveOutDevice = new WasapiOut(AudioClientShareMode.Shared, 100);
заменить на:
C#
1
waveOutDevice = new DirectSoundOut(100);
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.08.2011, 08:15
Помогаю со студенческими работами здесь

Нужно сделать, чтобы при открытии главной формы открывалась еще одна (форма 2) сразу при появлении первой формы
я попробывал в евентс поставить онкреэйт форм 2 .шов ,программа запускается но появляется ошибка , как рализовать? есть какой нибудь...

Формы. При повторном открытии формы сбрасываются результаты вывода данных
Создал 2 формы. В 1й форме проходит расчет различных выражений. Данные расчета присваиваются переменным. Ввожу данные Нажимаю кнопку...

Очистка checkedlistbox при скрытии формы и открытии формы
Здравствуйте! Подскажите, мне нужно чтоб при скрытии формы checkedlistbox очищался, а при открытии из скрытого вида, наполнялся!

Блокировка на изменение формы при открытии второй формы
Привет всем Есть две формы. Вторая форма вызывается с помощью кнопки размещенной на первой форме (кнопка с макрокомандой на открытие...

При открытии второй формы в combobox.text отобразить выделенный Item в listview из первой формы
на первой форме listbox и кнопка(listbox привязан к бд).При нажатии на кнопку открывается вторая форма с combobox с теми же данными что и в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
24
Ответ Создать тему
Новые блоги и статьи
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции. <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible". . .
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов. import "math" func angleClock(hour int, minutes int) float64 { . . .
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru