Минимальный образец: < /p>
#include
void midiPlay(HWND hwnd, LPSTR midi) {
char s[256];
memset(s, 0, 256);
sprintf(s, "open %s type sequencer alias mus", midi);
mciSendString(s, 0, 0, 0);
mciSendString("play mus notify", 0, 0, hwnd);
};
LRESULT CALLBACK WindowProc(HWND hw, UINT uMsg, WPARAM wParam, LPARAM lParam) {
switch (uMsg) {
case WM_CLOSE:
DestroyWindow(hw);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
case MM_MCINOTIFY:
mciSendString("play mus from 0 notify", 0, 0, hw);
return 0;
}
return DefWindowProc(hw, uMsg, wParam, lParam);
};
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
WNDCLASS wc = {0};
MSG msg;
wc.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
wc.lpfnWndProc = WindowProc;
wc.hInstance = hInstance;
wc.lpszClassName = "TEST";
RegisterClass(&wc);
HWND hwnd = CreateWindowEx(WS_EX_TOPMOST, "TEST", "TEST", WS_POPUP, CW_USEDEFAULT, CW_USEDEFAULT, 640, 480, 0, 0, hInstance, 0);
midiPlay(hwnd, ".\\ancient.mid");
bool running = true;
while (running) {
if (PeekMessage(&msg, 0, 0, 0, PM_REMOVE)) {
if (msg.message == WM_QUIT) {
running = false;
}
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
return 0;
};
< /code>
midi, который я использую: limewire.com. < /p>
Первая нота MIDI пропускается на петлях. Я уже пробовал вручную ищу, останавливаясь и перезапустив миди, ни один из них не работал. Я не знаю, что еще сделать.
Как это исправить? < /P>
Подробнее здесь: https://stackoverflow.com/questions/797 ... first-note
Win32 - MCI Looping сокращает первую ноту ⇐ C++
Программы на C++. Форум разработчиков
1759292324
Anonymous
Минимальный образец: < /p>
#include
void midiPlay(HWND hwnd, LPSTR midi) {
char s[256];
memset(s, 0, 256);
sprintf(s, "open %s type sequencer alias mus", midi);
mciSendString(s, 0, 0, 0);
mciSendString("play mus notify", 0, 0, hwnd);
};
LRESULT CALLBACK WindowProc(HWND hw, UINT uMsg, WPARAM wParam, LPARAM lParam) {
switch (uMsg) {
case WM_CLOSE:
DestroyWindow(hw);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
case MM_MCINOTIFY:
mciSendString("play mus from 0 notify", 0, 0, hw);
return 0;
}
return DefWindowProc(hw, uMsg, wParam, lParam);
};
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
WNDCLASS wc = {0};
MSG msg;
wc.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
wc.lpfnWndProc = WindowProc;
wc.hInstance = hInstance;
wc.lpszClassName = "TEST";
RegisterClass(&wc);
HWND hwnd = CreateWindowEx(WS_EX_TOPMOST, "TEST", "TEST", WS_POPUP, CW_USEDEFAULT, CW_USEDEFAULT, 640, 480, 0, 0, hInstance, 0);
midiPlay(hwnd, ".\\ancient.mid");
bool running = true;
while (running) {
if (PeekMessage(&msg, 0, 0, 0, PM_REMOVE)) {
if (msg.message == WM_QUIT) {
running = false;
}
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
return 0;
};
< /code>
midi, который я использую: limewire.com. < /p>
Первая нота MIDI пропускается на петлях. Я уже пробовал вручную ищу, останавливаясь и перезапустив миди, ни один из них не работал. Я не знаю, что еще сделать.
Как это исправить? < /P>
Подробнее здесь: [url]https://stackoverflow.com/questions/79778603/win32-mci-looping-cuts-off-first-note[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия