Цитата wolkow70:
Дак себе то я сделал
Прикрепил скрипт от своей сборки PotPlayer. Посмотрите, как там сделано . У меня все прекрасно работает. »
|
Вы не правильно поняли, я советовал вам подправить File Association.nsh и вам и другим стало бы легче!
Цитата vahe-91:
возможно сделать так, чтобы установшик воспроизводил песню как в Inno Setup »
|
Могу только добавить, что лучше всего он кушает MP3 файлы с любым битрейном и повтором, а mid файлы долго запихивает, по этому привёл пример с банером. Если вместо SW_HIDE использовать SW_SHOW увидите плеер.
читать дальше »
Код:
;Определения пользователя!
!define SND_NAME "music.mid" # версия ${SND_NAME}
;Определяем свою переменную!
Var HMCI
ReserveFile "${NSISDIR}\Plugins\system.dll"
ReserveFile "${SND_NAME}"
Function onGuiInit
InitPluginsDir # обязательно инициировать каталог плагина!
SetOutPath $PLUGINSDIR # обязательно определить каталог плагина!
File "Sounds\${SND_NAME}" # от куда брать файл!
;Вставляем простой банер на тот случай если вы используете midi файлы, что бы заполнить паузу
Banner::show /set 76 "Пожалуйста подождите." "Идет подготовка к установке..."
System::Call 'msvfw32.dll::MCIWndCreate(i 0, i 0,i 0x0070, t "$PLUGINSDIR\${SND_NAME}") i .r0'
StrCpy $HMCI $0 # сохраняет MCI описание окна на WM_CLOSE в секции!
SendMessage $HMCI 0x0490 0 0 $0 # проверка поддерживаемого формата!
IntCmp $0 0 nosup
ShowWindow $HMCI SW_HIDE # если вы хотите, чтобы mci окно было скрыто!
SendMessage $HMCI 0x0465 0 "STR:play" # Используй "STR:play" или "STR:play repeat", но "repeat" проблемна с файлами midi!
Banner::destroy # придушить банер
nosup:
FunctionEnd
Section main ; секция установки!
SectionEnd
Function .onGUIEnd
;закрывает плеер!
SendMessage $hmci ${WM_CLOSE} 0 0
FunctionEnd
--