<?xml version="1.0" encoding="windows-1251"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<atom:link href="https://cpp.ixbb.ru/export.php?type=rss" rel="self" type="application/rss+xml" />
		<title>Форум программистов C++</title>
		<link>http://cpp.ixbb.ru/</link>
		<description>Форум программистов C++</description>
		<language>ru-ru</language>
		<lastBuildDate>Sun, 14 Jul 2019 23:38:51 +0300</lastBuildDate>
		<generator>MyBB/mybb.ru</generator>
		<item>
			<title>Проигрывание MIDI нот в программе</title>
			<link>http://cpp.ixbb.ru/viewtopic.php?pid=3#p3</link>
			<description>&lt;p&gt;Здравствуйте, пытаюсь проиграть MIDI ноты в &lt;br /&gt;программе. Ошибок компиляции нет, но и ноты &lt;br /&gt;не звучат. Если кто знает что я делаю неправильно &lt;br /&gt;помогите пожалуйста. Пробовал в разных средах &lt;br /&gt;программирования в Dev_Cpp и в Visual studio, &lt;br /&gt;результат не меняется. В проект обязательно &lt;br /&gt;нужно подключить библиотеку winmm.lib, иначе &lt;br /&gt;будет ошибка при компиляции проекта. Вот ссылка &lt;br /&gt;на информацию по MIDI функциям &lt;br /&gt;&lt;a href=&quot;https://docs.microsoft.com/ru-ru/windows/win32/multimedia/midi-functions&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;https://docs.microsoft.com/ru-ru/window &amp;#8230; -functions&lt;/a&gt;&lt;/p&gt;
						&lt;p&gt;В конце кода вызов трех функций (Sleep(), &lt;br /&gt;midiOutShortMsg(), midiOutClose()) я сделал &lt;br /&gt;комментариями, это потому что нота должна звучать, &lt;br /&gt;а три последние функции нужны будут потом. Когда &lt;br /&gt;нота зазвучит тогда и эти функции можно будет &lt;br /&gt;разкомментировать. &lt;/p&gt;
						&lt;p&gt;Вот код&lt;/p&gt;
						&lt;p&gt;#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;#include &amp;lt;conio.h&amp;gt;&lt;br /&gt;#include &amp;lt;windows.h&amp;gt;&lt;br /&gt;#include &amp;lt;mmsystem.h&amp;gt;&lt;/p&gt;
						&lt;p&gt;int main(int argc, char *argv[])&lt;br /&gt;{ &lt;br /&gt;&amp;#160; &amp;#160; MMRESULT res;&lt;br /&gt;&amp;#160; &amp;#160; LPHMIDIOUT hnd = 0;&lt;br /&gt;&amp;#160; &amp;#160; HMIDIOUT out = 0;&lt;br /&gt;&amp;#160; &amp;#160; &lt;br /&gt;&amp;#160; &amp;#160; // Открыть MIDI устройство&lt;br /&gt;&amp;#160; &amp;#160; res = midiOutOpen(hnd, 0, 0, 0, 0);&lt;/p&gt;
						&lt;p&gt;&amp;#160; &amp;#160; // Выбрать инструмент и канал&lt;br /&gt;&amp;#160; &amp;#160; res = midiOutShortMsg(out, 0x000001C0);&lt;/p&gt;
						&lt;p&gt;&amp;#160; &amp;#160; // Проиграть ноту (нажать) &lt;br /&gt;&amp;#160; &amp;#160; res = midiOutShortMsg(out, 0x007F3C90);&lt;/p&gt;
						&lt;p&gt;&amp;#160; &amp;#160; // Длительность ноты&lt;br /&gt;&amp;#160; &amp;#160; // Sleep(1000);&lt;/p&gt;
						&lt;p&gt;&amp;#160; &amp;#160; // прервать проигрывание ноты (отпустить) &lt;br /&gt;&amp;#160; &amp;#160; //res = midiOutShortMsg(out, 0x007F3C80);&lt;/p&gt;
						&lt;p&gt;&amp;#160; &amp;#160; // Закрыть MIDI устройство&lt;br /&gt;&amp;#160; &amp;#160; //res = midiOutClose(out); &lt;br /&gt;&amp;#160; &amp;#160; &lt;br /&gt;&amp;#160; &amp;#160; getch();&lt;br /&gt;&amp;#160; &amp;#160; return 0;&lt;br /&gt;}&lt;/p&gt;</description>
			<author>mybb@mybb.ru (oi00uknjuopk)</author>
			<pubDate>Sun, 14 Jul 2019 23:38:51 +0300</pubDate>
			<guid>http://cpp.ixbb.ru/viewtopic.php?pid=3#p3</guid>
		</item>
		<item>
			<title>FAQ</title>
			<link>http://cpp.ixbb.ru/viewtopic.php?pid=2#p2</link>
			<description>&lt;p&gt;Наше FAQ пока что новое, а потому содержит только основную информацию.&lt;br /&gt;Начну с самого распространенного. &amp;quot;У меня код из Studio не работает в Dev-Cpp&amp;quot;. Самая распространенная ошибка - применение #pragma comment в Dev-Cpp, поскольку, согласно официальной справке, данная среда не поддерживает #pragma comment, не знаю, почему, но факт - что не поддерживает.&lt;br /&gt;В таком случае, например, следующий код надо переделать так:&lt;/p&gt;&lt;div class=&quot;code-box&quot;&gt;&lt;strong class=&quot;legend&quot;&gt;Код:&lt;/strong&gt;&lt;div class=&quot;blockcode&quot;&gt;&lt;div class=&quot;scrollbox&quot; style=&quot;height: 16.5em&quot;&gt;&lt;pre&gt;#include &amp;lt;windows.h&amp;gt;
#include &amp;lt;urlmon.h&amp;gt;
#pragma comment (lib, &amp;quot;urlmon.lib&amp;quot;)
int main()
{
URLDownloadToFile(0, &amp;quot;http://google.com/search?q=Urlmon&amp;quot;,
                                  &amp;quot;C:\\myfile.html&amp;quot;, 0, 0);
return 0;
}&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;code-box&quot;&gt;&lt;strong class=&quot;legend&quot;&gt;Код:&lt;/strong&gt;&lt;div class=&quot;blockcode&quot;&gt;&lt;div class=&quot;scrollbox&quot; style=&quot;height: 15em&quot;&gt;&lt;pre&gt;#include &amp;lt;windows.h&amp;gt;
#include &amp;lt;urlmon.h&amp;gt;
int main()
{
URLDownloadToFile(0, &amp;quot;http://google.com/search?q=Urlmon&amp;quot;,
                                  &amp;quot;C:\\myfile.html&amp;quot;, 0, 0);
return 0;
}&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;А затем нажать Проект (если не создать новый проект библиотеку добавить невозможно) - Параметры - Параметры - Добавить библиотеку. Затем надо найти папку, из которой запущен Dev-Cpp, обычно это C:\Program Files\Dev-Cpp, затем необходимо найти папку MinGW64, x86_64-w64-mingw32, lib32 и ввести имя файла liburlmon.a&lt;br /&gt;Смотрите видео в youtube, как это сделать:&lt;/p&gt;</description>
			<author>mybb@mybb.ru (General)</author>
			<pubDate>Thu, 10 Jan 2019 19:06:08 +0300</pubDate>
			<guid>http://cpp.ixbb.ru/viewtopic.php?pid=2#p2</guid>
		</item>
	</channel>
</rss>
