Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.92
sergey.shuvalov
-6 / 1 / 0
Регистрация: 06.11.2011
Сообщений: 268
#1

Не работает PlaySound - C++

02.03.2013, 11:38. Просмотров 1822. Ответов 22
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <windows.h>
#include <string>
#include <conio.h>
#include <fstream>
#include <iomanip>
#include <stdio.h>
#include <mmsystem.h>
 
 using namespace std;
 
int main()
{
    
PlaySound("privet.wav", NULL, SND_ASYNC);
 
cout<<endl<<" До свиданья"<<endl;
 
 getch();
 
 return 0;
   
}
Пишет:
error C2664: PlaySoundW: невозможно преобразовать параметр 1 из "const char [11]" в "LPCWSTR"
1> Типы, на которые указывают указатели, не связаны; для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========

Подскажите люди добрые, что этому есть причина ?

Пробовал:
Решение №1:
Код C++
1
PlaySound(LPWSTR("C:\\Windows\\Media\\notify.wav"), NULL, SND_ASYNC);
Решение №2:
Код C++
1
PlaySound(String("C:\\Windows\\Media\\notify.wav").w_str() , NULL, SND_ASYNC);
Решение №3:
Код C++
1
PlaySound((wchar_t *)("C:\\Windows\\Media\\notify.wav"), NULL, SND_ASYNC);
Решение №4:
Код C++
1
PlaySoundA("C:\\Windows\\Media\\notify.wav", NULL, SND_ASYNC);

Без результата.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.03.2013, 11:38     Не работает PlaySound
Посмотрите здесь:

PlaySound - C++
Всем день добрый. Не могу разобраться вот с чем: При использовании функции PlaySound, во время воспроизведения ресурса,...

playsound - C++
суть в том что куда бы я ни добавлял функцию playsound - окно не создается. музыка играет - а окна нет. так вот вопрос: Куда её надо...

PlaySound mp3 - C++
Можно ли с помощью функции PlaySound воспроизвести mp3 файл? Напишите пример воспроизведения файла 1.mp3 или 1.wav.

Playsound and Dev c++ - C++
господа не компилится такой код,библиотеку winmm.lib кинул в c:\dev-cpp\lib,вот код- #include &lt;windows.h&gt; #pragma comment(lib, &quot;winmm&quot;)...

Не играет музыка PlaySound() - C++
Вот пример из книги: /*------------------------------------------------------------ HELLOWIN.C -- Displays &quot;Hello, Windows 95!&quot; in...

PlaySound не воспроизводит звук - C++
Есть код: (visual studio 2013) #include &lt;windows.h&gt; #include &lt;mmsystem.h&gt; #pragma comment(lib,&quot;C:\\Windows\\System32\\winmm.dll&quot;) ...

PlaySound: что я делаю не так? - C++
Казалось бы, элементарно: PlaySound(&quot;1.wav&quot;, NULL, SND_FILENAME); Неизменно &quot;превосходный&quot; результат: Error C2664: 'PlaySoundW' :...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
5267 / 4587 / 1538
Регистрация: 14.04.2014
Сообщений: 18,218
15.10.2015, 09:31     Не работает PlaySound #16
Что это? Что за чтение по адресам?
zorin_chel
0 / 0 / 0
Регистрация: 11.10.2015
Сообщений: 9
15.10.2015, 19:21     Не работает PlaySound #17
я пишу dll, которая аттачится к процессу и нужно, чтобы при определенном значении в определенном адресе проигрывалась музыка, а конкретно значение в адресе 0xBA68A5 == 0x00000022, если там другое значение, то звук должен останавливаться
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include <iostream>
#include <windows.h>
#include <string>
#include <conio.h>
#include <fstream>
#include <iomanip>
#include <stdio.h>
#include <io.h>
#include <fcntl.h>
#include <mmsystem.h>
#pragma comment(lib, "winmm")
 
using namespace std; 
 
DWORD WINAPI GtaSA_thread (LPVOID);
 
 
 
DWORD APIENTRY DllMain (HMODULE hModule, DWORD ul_reason_for_call, LPVOID ipReserved)
 
{
    switch (ul_reason_for_call)
    {
    case DLL_PROCESS_ATTACH:
        CreateThread (NULL, NULL, GtaSA_thread, NULL, NULL, NULL);
    case DLL_THREAD_ATTACH:
    case DLL_THREAD_DETACH:
    case DLL_PROCESS_DETACH:
        break;
    }
    return true;
}
 
 
 
 
 
 
DWORD WINAPI GtaSA_thread (LPVOID)
{
    DWORD*var = (DWORD*)0xBA68A5; 
    
    for (;;Sleep (100))
 
    {  
        
 
        
 
 
        if (*var == 0x00000022)
        {        
                    {
 
                    PlaySound("C:\\Games\\GTA2\\sound.WAV", NULL, SND_ASYNC);
                       while(1)
                       {
                       continue;
                       }
                       return 0;
                     }
        }else
      
                     {
                    PlaySound(NULL, NULL, SND_ASYNC);
                     }
 
      }
 
}
звук не останавливается
nmcf
5267 / 4587 / 1538
Регистрация: 14.04.2014
Сообщений: 18,218
15.10.2015, 19:24     Не работает PlaySound #18
Для чего 56-59? Это же бесконечный цикл.
zorin_chel
0 / 0 / 0
Регистрация: 11.10.2015
Сообщений: 9
15.10.2015, 19:26     Не работает PlaySound #19
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include <iostream>
#include <windows.h>
#include <string>
#include <conio.h>
#include <fstream>
#include <iomanip>
#include <stdio.h>
#include <io.h>
#include <fcntl.h>
#include <mmsystem.h>
#pragma comment(lib, "winmm")
 
using namespace std; 
 
DWORD WINAPI GtaSA_thread (LPVOID);
 
 
 
DWORD APIENTRY DllMain (HMODULE hModule, DWORD ul_reason_for_call, LPVOID ipReserved)
 
{
    switch (ul_reason_for_call)
    {
    case DLL_PROCESS_ATTACH:
        CreateThread (NULL, NULL, GtaSA_thread, NULL, NULL, NULL);
    case DLL_THREAD_ATTACH:
    case DLL_THREAD_DETACH:
    case DLL_PROCESS_DETACH:
        break;
    }
    return true;
}
 
 
 
 
 
 
DWORD WINAPI GtaSA_thread (LPVOID)
{
    DWORD*var = (DWORD*)0xBA68A5; 
    
    for (;;Sleep (100))
 
    {  
        
        if (*var == 0x00000022)
        {        
                    PlaySound("C:\\Games\\GTA2\\sound.WAV", NULL, SND_ASYNC);
 
                   
                      
                    
        }else
      
                     {
                    PlaySound(NULL, NULL, SND_ASYNC);
                     }
 
      }
 
}
тоже не работает
nmcf
5267 / 4587 / 1538
Регистрация: 14.04.2014
Сообщений: 18,218
15.10.2015, 19:39     Не работает PlaySound #20
Проверяй, вызывается ли вообще функция и есть ли там 0x22. Sleep() внутрь цикла вставь. 100 не мало?
zorin_chel
0 / 0 / 0
Регистрация: 11.10.2015
Сообщений: 9
15.10.2015, 19:45     Не работает PlaySound #21
значение проверено, выводил на консоль и через Cheat Engine, и экспериментально (звук повторяется в меню, когда выхожу из меню звук пропадает), но проигрывается не постоянно, а начинается и заканчивается периодически ( for (;;Sleep (100)) ),
nmcf
5267 / 4587 / 1538
Регистрация: 14.04.2014
Сообщений: 18,218
15.10.2015, 19:49     Не работает PlaySound #22
Всё таки проигрывается? В чём проблема тогда?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.10.2015, 20:34     Не работает PlaySound
Еще ссылки по теме:

PlaySound и куча ошибок впридачу - C++
Написал змейку , решил добавить в игру звуковые эффекты. На MSDN нашел функцию PlaySound. Подключил заголовки,подключил либу ..вот так...

Опять исключения. Только теперь их вызывает PlaySound - C++
День всем добрый! Только захотел разукрасить свою программу, как наткнулся на очередную ошибку в виде исключения. Дело такое. Я...

playsound(), как сделать фоновую музыку в игре - C++
Есть игра. Есть звуки с использованием Beep()/ Нужна фоновая музыка. Читал что нашел - предлагают создать параллельный поток. Для меня это...

PlaySound или аналог для проигрывания двух и более звуков - C++
Добрый день, изучаю C++, сейчас мне нужно, чтобы проигрывался звук, я нашёл такую ф-цию как PlaySound() покопавшись здесь...

Функция PlaySound воспроизводит звук и возвращает управление СРАЗУ ЖЕ (но это неправильно), почему? - C++
Друзья! Вот код: #include &lt;windows.h&gt; #include &lt;stdio.h&gt; int main (){ PlaySound (&quot;fail.wav&quot;, 0, SND_FILENAME || SND_SYNC); ...


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

Или воспользуйтесь поиском по форуму:
zorin_chel
0 / 0 / 0
Регистрация: 11.10.2015
Сообщений: 9
15.10.2015, 20:34     Не работает PlaySound #23
начинается и заканчивается периодически (т.е. на 1 сек. звучит, потом на 1 сек. останавливается и т.д.), а надо, чтобы проигрывался непрерывно, а при выходе из меню останавливался

Добавлено через 42 минуты
получилось!!!
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include <iostream>
#include <windows.h>
#include <string>
#include <conio.h>
#include <fstream>
#include <iomanip>
#include <stdio.h>
#include <io.h>
#include <fcntl.h>
#include <mmsystem.h>
#pragma comment(lib, "winmm")
 
using namespace std; 
 
DWORD WINAPI GtaSA_thread (LPVOID);
 
 
 
DWORD APIENTRY DllMain (HMODULE hModule, DWORD ul_reason_for_call, LPVOID ipReserved)
 
{
    switch (ul_reason_for_call)
    {
    case DLL_PROCESS_ATTACH:
        CreateThread (NULL, NULL, GtaSA_thread, NULL, NULL, NULL);
    case DLL_THREAD_ATTACH:
    case DLL_THREAD_DETACH:
    case DLL_PROCESS_DETACH:
        break;
    }
    return true;
}
 
 
 
 
 
 
DWORD WINAPI GtaSA_thread (LPVOID)
{
    DWORD*var = (DWORD*)0xBA68A5; 
    for (;;Sleep (100))
 
    {  
        
        if (*var != 0x00000022)
        {        
                    PlaySound("C:\\Games\\GTA2\\sound.WAV", NULL, SND_ASYNC);
 
        }           
                      
    }   
                    
 
}
https://www.youtube.com/watch?v=-aUU...ature=youtu.be
Yandex
Объявления
15.10.2015, 20:34     Не работает PlaySound
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru