Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Всем привет!
Цитата MKN:
Если речь о звуке, то можно попробовать bass.dll. По моему, это самый лучший вариант для воспр. звука в NSIS »
А вы можете привести пример сценария с использованием этой библиотеки? Например, чтобы звучала фоновая музыка. У меня не получается создать рабочий код. Вот как делаю я (пример):

Код: Выделить весь код
XPStyle on
Name "Test"
OutFile "TestBass.exe"
Caption "Test Bass"
BrandingText 'Test'


!include "MUI2.nsh"
InstallDir "$EXEDIR"

!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
!insertmacro MUI_LANGUAGE "English"

Section "OGG"
SectionEnd

Function .onInit
InitPluginsDir
File /oname=$PLUGINSDIR\BASS.dll BASS.dll
File /oname=$PLUGINSDIR\mymusic.ogg mymusic.ogg
StrCpy $R5 "$PLUGINSDIR\mymusic.ogg"

; Инициализация
System::Call '$PLUGINSDIR\BASS::BASS_Init(i -1,i 44100,i 0,i 0,i 0)'

; Создание файлового потока
System::Call '$PLUGINSDIR\BASS::BASS_StreamCreateFile(i 0,t R5,i 0,i 0,i 4)'

; Воспроизведение канала
System::Call '$PLUGINSDIR\BASS::BASS_ChannelPlay(i 0, i 0)'
FunctionEnd

Function .onGUIEnd
System::Call '$PLUGINSDIR\BASS::BASS_ChannelStop()'
System::Call '$PLUGINSDIR\BASS::BASS_StreamFree()'
System::Call '$PLUGINSDIR\BASS::BASS_Free()'
FunctionEnd
Но звук не воспроизводится. Если честно я не совсем понял, как правильно надо использовать вызовы из сторонних DLL в NSIS, что нужно писать и откуда брать данные, которые нужно указывать в скобках вызова функций.

Спасибо.

Отправлено: 18:57, 11-08-2014 | #1271