AutoIt: v3.3.8.1
Версия: 1.0.2.23
Категория: Автоматизация, Вспомогательные функции, Графика, Интернет, Сеть, Разное
Описание: Эта программа позволит Вам прослушивать транслируемые радиостанции 101.RU.
Функционал: Любое окно такое как TOP10, Плейлист, Новые треки, имеют возможность копировать название прослушиваемой композиции и сохранение композиции на ваш ПК.
Код/Пример файл Radio.au3:
Файл: EXE
Источник: autoit-script.ru
Автор: ivsatel
Версия: 1.0.2.23
Категория: Автоматизация, Вспомогательные функции, Графика, Интернет, Сеть, Разное
Описание: Эта программа позволит Вам прослушивать транслируемые радиостанции 101.RU.
Функционал: Любое окно такое как TOP10, Плейлист, Новые треки, имеют возможность копировать название прослушиваемой композиции и сохранение композиции на ваш ПК.
Код/Пример файл Radio.au3:
Код:
#include <Constants.au3>
#include <GuiButton.au3>
#include <WindowsConstants.au3>
#include <ComboConstants.au3>
#include <GuiImageList.au3>
#include <GDIPlus.au3>
#include <ListBoxConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <Icons.au3>
#include <SliderConstants.au3>
#include <WinAPI.au3>
#include <Misc.au3>
#include <MyBassDll.au3>
#include <InfoTrack-101.au3>
#include <VLC-Read_RTMP.au3>
#include <Binary_Bass_DLL.au3>
#include <GZIP_exe.au3>
Global $aTextSourseChanel, $aTextHrefChanel, $sUrl2Chanel, $sInetread2, $sInetread3, $Coord, $TrayRestoreItem, $TrayExitItem, $TrayNameArtist, _
$Label4, $BattonStop, $BattonPlay, $hGui, $Label1, $Label2, $aChanelsHref, $aChanelsName, $hComboChan, $hComboSourseChan, $Label3, $iSlider, _
$iSettings, $play, $stop, $aTitleSong, $TrayNameArtistSour, $TrayTopArtistSour, $hChGui, $List1, $sFindPlayList, $aLinckPlayList, $aSoursPlayList, _
$ContextMenu, $ListContext, $ListItem, $aSoursDownPlayList, $ListDownloadItem, $Icon, $MainContextMenu, $Iconcontext, $IconitemPL, $IconitemRL, _
$IconitemAbout, $IconitemEXIT, $IconitemNEWTRAX, $xhChGui, $xContextMenu, $xList1, $xListContext, $xListItem, $xListDownloadItem, $xsFindPlayList, _
$xaSoursPlayList, $xaSoursDownPlayList, $tophChGui, $topContextMenu, $topList1, $topListContext, $topListItem, $topListDownloadItem, $topsFindPlayList, _
$topaSoursPlayList, $topaSoursDownPlayList, $IconitemTOP, $TrayTop10, $TrayNEWTraxSour, $reload, $MusicHandle, $sIDChanel, $z, $file, $IconitemValidURL, _
$hPLCreat, $BCGV, $TrayValidURL, $TrayValidURLSet, $IconitemPlayURL, $TrayPlayURL, $TrayPlayURLSet, $sCheck, $iDummy, $aMakeArrayNameChanPersonal, _
$aMakeArrayHrefChanPersonal, $aNameChanPersonal[1], $aHrefChanPersonal[1], $aMakeHrefPage[1], $sIDRTMPChanel, $hWndPlayer, $StatDownload, $iNavCount = 'Stop', _
$chek, $tophFindGui, $InputFindGui, $findbatt, $ComboFindStation, $startbatt, $aAllResArray[1][2], $aRes1Href[1], $aRes2Href[1], $aRes1Name1[1], _
$aRes2Name2[1], $sSrtreqest1 = '', $sS, $sReadInp, $sSearchCountURL = 'Silent', $IconitemSearch, $bFile, $bSour, $RandFileName, $iTempName, $bOpenTempFile, _
$1Param, $2Param, $sPageURL
Local $tText, $sInetread1, $vGetSourseChanPersonal, $bFileGZIP, $iPIDGZIP = '', $bwBassDll
;########################## Запуск только одной копии программы
If Not _Singleton(@ScriptName, 1) Then
Exit
EndIf
;########################## Запуск только одной копии программы
;If Not FileExists(@TempDir & '\BASS.dll') Then
FileDelete(@TempDir & '\BASS.dll')
$bwBassDll = FileOpen(@TempDir & '\BASS.dll', 26)
FileWrite($bwBassDll, _InstallBassDll())
FileClose($bwBassDll)
;EndIf
;~ FileInstall('BASS.dll', @TempDir & '\BASS.dll', 1)
FileInstall('DownloadThreadMod.a3x', @TempDir & '\DownloadThreadMod.a3x', 1)
;##########################
;########################## Установка модуля загрузки
;##########################
While 1
If FileExists(@TempDir & '\DownloadThreadMod.a3x') Then
$bFile = FileOpen(@TempDir & '\DownloadThreadMod.a3x', 16)
$bSour = FileRead($bFile)
FileClose($bFile)
FileDelete(@TempDir & '\DownloadThreadMod.a3x')
ExitLoop
EndIf
WEnd
;##########################
;########################## Установка модуля загрузки
;##########################
Opt('SendKeyDelay', 0)
Opt('TrayMenuMode', 3)
Opt('MustDeclareVars', 1)
Opt('GUICloseOnESC', 1)
OnAutoItExitRegister("OnAutoItExit")
_BASS_STARTUP(@TempDir & '\BASS.dll')
_BASS_Init(-1, 44100, 4096, '', '')
If @error Then
MsgBox(0, "Error", "Could not initialize Bass.dll")
Exit
EndIf
HotKeySet('^4', '_RestoreFromTray_Proc')
;################################################Создание меню для TOP 10
$TrayTop10 = TrayCreateItem('TOP 10')
TrayCreateItem('')
;################################################Создание меню для Новые треки
$TrayNEWTraxSour = TrayCreateItem('Новые треки')
TrayCreateItem('')
;################################################Создание меню для Плейлист
$TrayTopArtistSour = TrayCreateItem('Плейлист')
TrayCreateItem('')
;################################################Создание меню для Названия
$TrayNameArtist = TrayCreateMenu('Название')
$TrayNameArtistSour = TrayCreateItem('Артист', $TrayNameArtist)
TrayCreateItem('')
;################################################Создание меню для Управления
;################################################ Получение адреса страницы
$TrayPlayURL = TrayCreateMenu('Адрес страницы')
$TrayPlayURLSet = TrayCreateItem('http://101.ru', $TrayPlayURL)
TrayCreateItem('')
;################################################ Получение адреса страницы
;################################################ Получение валидного адреса
$TrayValidURL = TrayCreateMenu('Валидный адрес')
$TrayValidURLSet = TrayCreateItem('Получить валидный адрес канала в плейлист', $TrayValidURL)
TrayCreateItem('')
;################################################ Получение валидного адреса
$iSettings = TrayCreateMenu("Управление")
$reload = TrayCreateItem('Перезагрузить', $iSettings)
$play = TrayCreateItem('Play', $iSettings)
$stop = TrayCreateItem('Stop', $iSettings)
TrayCreateItem('')
$TrayRestoreItem = TrayCreateItem('Развернуть')
TrayItemSetState(-1, $TRAY_DEFAULT)
TrayCreateItem('')
$TrayExitItem = TrayCreateItem('Выход')
TraySetToolTip('RADIO-101.RU')
TraySetOnEvent($TRAY_EVENT_PRIMARYUP, "_RestoreFromTray_Proc")
TraySetClick(16)
_MainGUIStart()
Func _MainGUIStart()
$hGui = GUICreate("Радио 101-RU", 240, 290, -1, -1, BitOR($WS_OVERLAPPEDWINDOW, $WS_CLIPSIBLINGS, $WS_CLIPCHILDREN))
;##################################################################################################################Создание меню
$Icon = GUICtrlCreateIcon('', 0, 210, 5, 16, 16)
GUICtrlSetTip($Icon, 'Меню', '', 1, 3)
GUICtrlSetImage($Icon, @ScriptFullPath, 99)
$Iconcontext = GUICtrlCreateContextMenu($Icon)
;################################################Создание меню для Плейлист
$IconitemTOP = GUICtrlCreateMenuItem("TOP 10", $Iconcontext)
$IconitemPL = GUICtrlCreateMenuItem("Плейлист", $Iconcontext)
$IconitemNEWTRAX = GUICtrlCreateMenuItem("Новые треки", $Iconcontext)
GUICtrlCreateMenuItem("", $Iconcontext) ; разделитель
$IconitemSearch = GUICtrlCreateMenuItem("Поиск радиостанции", $Iconcontext)
GUICtrlCreateMenuItem("", $Iconcontext) ; разделитель
$IconitemValidURL = GUICtrlCreateMenuItem("Получить валидный адрес канала в плейлист", $Iconcontext)
GUICtrlCreateMenuItem("", $Iconcontext) ; разделитель
$IconitemPlayURL = GUICtrlCreateMenuItem("Адрес канала", $Iconcontext)
GUICtrlCreateMenuItem("", $Iconcontext) ; разделитель
$IconitemRL = GUICtrlCreateMenuItem("Перезагрузка", $Iconcontext)
GUICtrlCreateMenuItem("", $Iconcontext) ; разделитель
$IconitemEXIT = GUICtrlCreateMenuItem("Выход", $Iconcontext)
GUICtrlCreateMenuItem("", $Iconcontext) ; разделитель
$IconitemAbout = GUICtrlCreateMenuItem("О Программе", $Iconcontext)
;##################################################################################################################Создание меню
GUISetBkColor(0xFFFFFF, $hGui)
$Label1 = GUICtrlCreateLabel('Выберите канал', 10, 10, 90, 17)
GUICtrlSetBkColor($Label1, 0xFFFFFF)
$hComboChan = GUICtrlCreateCombo('', 10, 30, 220)
$Label2 = GUICtrlCreateLabel('Содержимое канала', 10, 55, 150, 17)
GUICtrlSetBkColor($Label2, 0xFFFFFF)
$hComboSourseChan = GUICtrlCreateCombo('', 10, 75, 220)
$BattonPlay = GUICtrlCreateButton('Play', 10, 110, 220, 25)
$BattonStop = GUICtrlCreateButton("Stop", 10, 145, 220, 25)
$Label4 = GUICtrlCreateLabel('', 10, 180, 220, 40, BitOR($ES_CENTER, $ES_NOHIDESEL, $ES_WANTRETURN))
GUICtrlSetFont($Label4, 8, 400)
GUICtrlSetColor($Label4, 0x0033FF)
GUICtrlSetBkColor($Label4, 0xFFFFFF)
$Label3 = GUICtrlCreateLabel('Г р о м к о с т ь', 10, 225, 220, 20, $SS_CENTER)
GUICtrlSetFont($Label3, 10, 400, 4)
GUICtrlSetBkColor($Label3, 0xFFFFFF)
$iSlider = GUICtrlCreateSlider(10, 245, 220, 30, BitOR($TBS_TOOLTIPS, $TBS_AUTOTICKS))
GUICtrlSetBkColor($iSlider, 0xFFFFFF)
GUICtrlSetLimit($iSlider, 100, 0)
GUICtrlSetData($iSlider, 100)
$iDummy = GUICtrlCreateDummy()
; Устанавливает связь идентификаторов с Ctrl+1 и Ctrl+2 и Ctrl+3 и Ctrl+- и Ctrl+=
Local $aAccelKeys[5][2] = [["^1", $BattonPlay],["^2", $BattonStop],["^3", $iDummy],["^=", $iSlider],["^-", $iSlider]]
GUISetAccelerators($aAccelKeys)
;№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№ Заполнение комбобоксов
_GetStartAdres()
;№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№ Заполнение комбобоксов
GUISetState(@SW_SHOW, $hGui)
While 1
Sleep(10)
Switch TrayGetMsg()
Case $TrayRestoreItem
GUISetState(@SW_SHOW, $hGui)
GUISetState(@SW_RESTORE, $hGui)
TraySetState(2)
Case $reload
If ProcessExists($iPID) Then
While WinExists("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]") = 1
$hWndPlayer = WinWait("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]", "", 5)
WinKill($hWndPlayer)
WEnd
$s_ENABLE_Player = 0
EndIf
AdlibUnRegister('_Title')
GUIDelete($hGui)
_MainGUIStart()
Case $play
If GUICtrlRead($hComboSourseChan) == '' Then
MsgBox('', 'ERROR', 'Выберите канал и содержимое канала')
EndIf
If $iNavCount == 'Play' Then
ContinueCase
Else
If GUICtrlRead($hComboChan) == 'Персональные' And $s_ENABLE_Player == 0 Then
AdlibRegister('_Title', 15000)
For $i = 0 To UBound($aMakeArrayNameChanPersonal) - 1
If GUICtrlRead($hComboSourseChan) == $aNameChanPersonal[$i] Then
$iNavCount = 'Play'
_Search_Player($aHrefChanPersonal[$i])
GUISetState(@SW_MINIMIZE, $hGui)
EndIf
Next
Else
If Not IsArray($aTextSourseChanel) Or Not IsArray($aTextHrefChanel) Or GUICtrlRead($hComboSourseChan) == '' And $s_ENABLE_Player == 0 Then
MsgBox('', 'ERROR', 'Выберите канал и содержимое канала')
Else
_PlayStation()
EndIf
EndIf
EndIf
Case $stop
If ProcessExists($iPID) Then
While WinExists("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]") = 1
$hWndPlayer = WinWait("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]", "", 5)
WinKill($hWndPlayer)
WEnd
$s_ENABLE_Player = 0
EndIf
If Not IsArray($aTextSourseChanel) Or Not IsArray($aTextHrefChanel) Or GUICtrlRead($hComboSourseChan) == '' Then
MsgBox('', 'ERROR', 'Выберите канал и содержимое канала')
Else
AdlibUnRegister('_Title')
_StopPlayStation()
EndIf
Case $TrayTopArtistSour
If GUICtrlRead($hComboChan) <> '' And GUICtrlRead($hComboSourseChan) <> '' And $iNavCount == 'Play' Then
_GetPlayList()
Else
MsgBox('', 'ERROR', 'Отображение плейлиста' & @LF & 'Возможно только при воспроизведении радиоканала!' & @LF & 'При этом' & @LF & 'Нельзя менять прослушиваемую станцию!')
EndIf
Case $TrayTop10
If GUICtrlRead($hComboChan) <> '' And GUICtrlRead($hComboSourseChan) <> '' And $iNavCount == 'Play' Then
_GetTOP()
Else
MsgBox('', 'ERROR', 'Отображение TOP листа' & @LF & 'Возможно только при воспроизведении радиоканала!' & @LF & 'При этом' & @LF & 'Нельзя менять прослушиваемую станцию!')
EndIf
Case $TrayNEWTraxSour
If GUICtrlRead($hComboChan) <> '' And GUICtrlRead($hComboSourseChan) <> '' And $iNavCount == 'Play' Then
_GetNEWTRAX()
Else
MsgBox('', 'ERROR', 'Отображение новых треков' & @LF & 'Возможно только при воспроизведении радиоканала!' & @LF & 'При этом' & @LF & 'Нельзя менять прослушиваемую станцию!')
EndIf
Case $TrayNameArtist
ClipPut(GUICtrlRead($Label4))
Case $TrayValidURLSet
If GUICtrlRead($hComboChan) <> '' And GUICtrlRead($hComboSourseChan) <> '' And $iNavCount == 'Play' Then
_ValidPlayListChanel()
Else
If $s_ENABLE_Player == 1 Then
_ValidPlayListChanel()
Else
MsgBox('', 'ERROR', 'Создание плейлиста' & @LF & 'Возможно только при воспроизведении радиоканала!' & @LF & 'При этом' & @LF & 'Нельзя менять прослушиваемую станцию!')
EndIf
EndIf
Case $TrayPlayURLSet
ClipPut('http://101.ru' & $sPageURL)
Case $TrayExitItem
If ProcessExists($iPID) Then
While WinExists("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]") = 1
$hWndPlayer = WinWait("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]", "", 5)
WinKill($hWndPlayer)
WEnd
$s_ENABLE_Player = 0
EndIf
AdlibUnRegister('_Title')
Exit
Case $TRAY_EVENT_PRIMARYDOWN
If BitAND(WinGetState($hGui), 2) Then
_WinAPI_SetWindowLong($hGui, $GWL_HWNDPARENT, WinGetHandle(AutoItWinGetTitle()))
GUISetState(@SW_HIDE, $hGui)
TraySetState(1)
Else
_WinAPI_SetWindowLong($hGui, $GWL_HWNDPARENT, 0)
GUISetState(@SW_SHOW, $hGui)
TraySetState(1)
EndIf
EndSwitch
;###############################################################################################################################
If Not ProcessExists($iPID) And $s_ENABLE_Player == 1 Then _StopPlayStation()
If ClipGet() == 'Загрузка плейлиста' Then ClipPut('')
If $s_ENABLE_Player == 'Error' Then _StopPlayStation()
$No_Play_url = _BASS_ChannelGetVolume($MusicHandle)
;###############################################################################################################################
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
If ProcessExists($iPID) Then
While WinExists("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]") = 1
$hWndPlayer = WinWait("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]", "", 5)
WinKill($hWndPlayer)
WEnd
$s_ENABLE_Player = 0
EndIf
AdlibUnRegister('_Title')
Exit
Case $IconitemEXIT
If ProcessExists($iPID) Then
While WinExists("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]") = 1
$hWndPlayer = WinWait("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]", "", 5)
WinKill($hWndPlayer)
WEnd
$s_ENABLE_Player = 0
EndIf
AdlibUnRegister('_Title')
Exit
Case $iDummy
Local $dll = DllOpen("user32.dll")
While 1
Select
Case BitAND(_IsPressed("11"), _IsPressed("33")) ;отслеживается нажатие Ctrl & "="
GUISetState(@SW_HIDE, $hGui)
TraySetState(1)
ExitLoop 1
EndSelect
ExitLoop
WEnd
DllClose($dll)
Case $GUI_EVENT_MINIMIZE
GUISetState(@SW_HIDE, $hGui)
TraySetState(1)
Case $IconitemPlayURL
ClipPut('http://101.ru' & $sPageURL)
Case $IconitemSearch
_FindStationGUI()
Case $IconitemAbout
MsgBox(0, 'О Программе', 'Версия программы = ' & FileGetVersion(@ScriptFullPath) & @LF & 'Разработчик = IvSatel')
Case $IconitemRL
If ProcessExists($iPID) Then
While WinExists("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]") = 1
$hWndPlayer = WinWait("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]", "", 5)
WinKill($hWndPlayer)
WEnd
$s_ENABLE_Player = 0
EndIf
GUIDelete($hGui)
_MainGUIStart()
Case $IconitemTOP
If GUICtrlRead($hComboChan) <> '' And GUICtrlRead($hComboSourseChan) <> '' And $iNavCount == 'Play' Then
_GetTOP()
Else
MsgBox('', 'ERROR', 'Отображение TOP листа' & @LF & 'Возможно только при воспроизведении радиоканала!' & @LF & 'При этом' & @LF & 'Нельзя менять прослушиваемую станцию!')
EndIf
Case $IconitemPL
If GUICtrlRead($hComboChan) <> '' And GUICtrlRead($hComboSourseChan) <> '' And $iNavCount == 'Play' Then
_GetPlayList()
Else
MsgBox('', 'ERROR', 'Отображение плейлиста' & @LF & 'Возможно только при воспроизведении радиоканала!' & @LF & 'При этом' & @LF & 'Нельзя менять прослушиваемую станцию!')
EndIf
Case $IconitemNEWTRAX
If GUICtrlRead($hComboChan) <> '' And GUICtrlRead($hComboSourseChan) <> '' And $iNavCount == 'Play' Then
_GetNEWTRAX()
Else
MsgBox('', 'ERROR', 'Отображение новых треков' & @LF & 'Возможно только при воспроизведении радиоканала!' & @LF & 'При этом' & @LF & 'Нельзя менять прослушиваемую станцию!')
EndIf
Case $IconitemValidURL
If _BASS_ChannelGetVolume($MusicHandle) <> 0 Or $s_ENABLE_Player == 1 Then
_ValidPlayListChanel()
Else
MsgBox('', 'ERROR', 'Создание плейлиста' & @LF & 'Возможно только при воспроизведении радиоканала!' & @LF & 'При этом' & @LF & 'Нельзя менять прослушиваемую станцию!')
EndIf
Case $hComboChan ; Событие Первого чекбокса
If $iNavCount == 'Play' Then _StopPlayStation()
If $s_ENABLE_Player == 1 And $s_ENABLE_Player <> 'Error' Then
While WinExists("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]") = 1
$hWndPlayer = WinWait("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]", "", 5)
WinKill($hWndPlayer)
WEnd
AdlibUnRegister('_Title')
GUICtrlSetColor($Label4, 0x0033FF)
GUICtrlSetData($Label4, '')
$s_ENABLE_Player = 0
Else
AdlibUnRegister('_Title')
GUICtrlSetColor($Label4, 0x0033FF)
GUICtrlSetData($Label4, '')
$s_ENABLE_Player = 0
EndIf
GUICtrlSetState($hComboSourseChan, $GUI_DISABLE)
;Добавление в чекбокс адресов основных каналов
If GUICtrlRead($hComboChan) <> 'Персональные' Then
For $i = 0 To UBound($aChanelsName) - 1
If GUICtrlRead($hComboChan) == $aChanelsName[$i] Then
$sInetread2 = InetRead('http://101.ru' & $aChanelsHref[$i], 1)
$aTextSourseChanel = StringRegExp(BinaryToString($sInetread2, 4), '(?si)<h2 class="title"><a href=".*?">(.*?)</a></h2>', 3)
InetClose($sInetread2)
If Not IsArray($aTextSourseChanel) Then MsgBox('', 'ERROR', '$aTextSourseChanel = ' & @error)
$sInetread3 = InetRead('http://101.ru' & $aChanelsHref[$i], 1)
$aTextHrefChanel = StringRegExp(BinaryToString($sInetread3, 4), '(?si)<h2 class="title"><a href="(.*?)">.*?</a></h2>', 3)
InetClose($sInetread3)
If Not IsArray($aTextHrefChanel) Then MsgBox('', 'ERROR', '$aTextHrefChanel = ' & @error)
EndIf
Next
GUICtrlSetData($hComboSourseChan, '', '')
For $i = 0 To UBound($aTextSourseChanel) - 1
GUICtrlSetData($hComboSourseChan, $aTextSourseChanel[$i] & '|') ; Имена станций
Next
Else
GUICtrlSetData($hComboSourseChan, '', '')
For $i = 0 To UBound($aNameChanPersonal) - 1
GUICtrlSetData($hComboSourseChan, $aNameChanPersonal[$i] & '|') ; Имена станций
Next
;Добавление в чекбокс адресов основных каналов
EndIf
GUICtrlSetState($hComboSourseChan, $GUI_ENABLE)
Case $hComboSourseChan ; Событие второго чекбокса
If $iNavCount == 'Play' Then _StopPlayStation()
If $s_ENABLE_Player == 1 And $s_ENABLE_Player <> 'Error' Then
While WinExists("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]") = 1
$hWndPlayer = WinWait("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]", "", 5)
WinKill($hWndPlayer)
WEnd
AdlibUnRegister('_Title')
GUICtrlSetColor($Label4, 0x0033FF)
GUICtrlSetData($Label4, '')
$s_ENABLE_Player = 0
Else
AdlibUnRegister('_Title')
GUICtrlSetColor($Label4, 0x0033FF)
GUICtrlSetData($Label4, '')
$s_ENABLE_Player = 0
GUICtrlSetData($Label4, '')
_BASS_ChannelStop($MusicHandle)
_BASS_StreamFree($MusicHandle)
$iNavCount = 'Stop'
GUICtrlSetState($BattonPlay, $GUI_FOCUS)
EndIf
Case $BattonPlay
If GUICtrlRead($hComboSourseChan) == '' Then
MsgBox('', 'ERROR', 'Выберите канал и содержимое канала')
EndIf
If $iNavCount == 'Play' Then
ContinueCase
Else
If GUICtrlRead($hComboChan) == 'Персональные' And $s_ENABLE_Player == 0 Then
AdlibRegister('_Title', 15000)
For $i = 0 To UBound($aMakeArrayNameChanPersonal) - 1
If GUICtrlRead($hComboSourseChan) == $aNameChanPersonal[$i] Then
$iNavCount = 'Play'
_Search_Player($aHrefChanPersonal[$i])
GUISetState(@SW_MINIMIZE, $hGui)
EndIf
Next
Else
If Not IsArray($aTextSourseChanel) Or Not IsArray($aTextHrefChanel) Or GUICtrlRead($hComboSourseChan) == '' And $s_ENABLE_Player == 0 Then
MsgBox('', 'ERROR', 'Выберите канал и содержимое канала')
Else
_PlayStation()
EndIf
EndIf
EndIf
Case $Label4
While 1
If GUICtrlRead($Label4) == '' Then ExitLoop
If GUICtrlRead($Label4) <> '' And GUICtrlRead($Label4) <> 'Загрузка плейлиста' Then
ClipPut(GUICtrlRead($Label4))
ExitLoop
EndIf
WEnd
Case $BattonStop
If $s_ENABLE_Player == 1 And $s_ENABLE_Player <> 'Error' Then
While WinExists("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]") = 1
$hWndPlayer = WinWait("[REGEXPTITLE:.*?VLC.*?|.*?PotPlayer.*?]", "", 5)
WinKill($hWndPlayer)
WEnd
AdlibUnRegister('_Title')
GUICtrlSetColor($Label4, 0x0033FF)
GUICtrlSetData($Label4, '')
$s_ENABLE_Player = 0
ContinueCase
EndIf
AdlibUnRegister('_Title')
_StopPlayStation()
Case $iSlider
Local $dll = DllOpen("user32.dll")
While 1
Select
Case BitAND(_IsPressed("11"), _IsPressed("BB")) ;отслеживается нажатие Ctrl & "="
If GUICtrlRead($iSlider) <> 100 Then
GUICtrlSetData($iSlider, GUICtrlRead($iSlider) + 5)
ExitLoop 1
EndIf
Case BitAND(_IsPressed("11"), _IsPressed("BD")) ;отслеживается нажатие Ctrl & "-"
If GUICtrlRead($iSlider) <> 0 Then
GUICtrlSetData($iSlider, GUICtrlRead($iSlider) - 5)
ExitLoop 1
EndIf
EndSelect
ExitLoop
WEnd
DllClose($dll)
_Volum()
EndSwitch
WEnd
EndFunc ;==>_MainGUIStart
Файл: EXE
Источник: autoit-script.ru
Автор: ivsatel