Определить статус воспроизведения файла - VB

Узнай цену своей работы

Формулировка задачи:

Здравствйуте!Опишу ситуацию: У меня есть программа в которой для воспроизведения аудио я использую библиотеки

winmm.dll

:
Листинг программы
  1. Private Declare Function mciExecute Lib "winmm.dll" (ByVal lpstrCommand As String) As Long
а для воспроизведения собственно аудиофайла команду:
Листинг программы
  1. Call mciExecute("play 1.mp3")
Вопрос: Как по нажатии на Command1 узнать играет ли 1.mp3 или уже воспроизведение завершено?

Решение задачи: «Определить статус воспроизведения файла»

textual
Листинг программы
  1. Option Explicit
  2.  
  3. Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringW" (ByVal lpstrCommand As Long, ByVal lpstrReturnString As Long, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
  4.  
  5. Private Sub Command1_Click()
  6.     Dim ret As String
  7.    
  8.     ret = Space(255)
  9.    
  10.     mciSendString StrPtr("status Music mode"), StrPtr(ret), Len(ret), 0
  11.    
  12.     If StrComp(Left$(ret, 7), "playing", vbTextCompare) = 0 Then
  13.         MsgBox "Г…Г№ГҐ ГЁГЈГ°Г*ГҐГІ"
  14.     Else
  15.         MsgBox "ГЋГ±ГІГ*Г*îâëåГ*Г®"
  16.     End If
  17. End Sub
  18.  
  19. Private Sub Form_Load()
  20.     Dim ret     As Long
  21.     Dim file    As String
  22.    
  23.     file = Chr$(34) & "D:\Òîëèê\ÌóçûêГ*\ZX-Spectrum\ZX Spectrum - Lyra 2 Megademo (1991).mp3" & Chr$(34)
  24.     ret = mciSendString(StrPtr("open " & file & " alias Music"), 0, 0, 0)
  25.     mciSendString StrPtr("play Music"), 0, 0, 0
  26.    
  27. End Sub
  28.  
  29. Private Sub Form_Unload(Cancel As Integer)
  30.     mciSendString StrPtr("close Music"), 0, 0, 0
  31. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.364 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы