Положение / длина состояния mci отсутствует
Я пытаюсь проверить, не закончился ли звуковой файл с помощью Windows MCI API в vb.net, но он продолжает выдавать недопустимое имя устройства (263 - MCIERR_INVALID_DEVICE_NAME), это из-за моего синтаксиса или какой-то другой ошибки?
Public Sub CheckAndPlay(ButtonName As String)
Dim Target As Integer
Dim Position As String = Space(256)
Dim Length As String = Space(256)
Target = Microsoft.VisualBasic.Right(ButtonName, 2)
w = mciSendString("status " & Target & " position", Position, 256, 0)
w = mciSendString("status " & Target & " length", Length, 256, 0)
If Val(Position) = Val(Length) - 10 Or Val(Length) = Nothing Or Val(Position) = 0 Or Val(Position) = Nothing Then
w = mciSendString("play " & ButtonName, Nothing, 0, 0)
End If
End Sub
1 ответ
Почему цель определяется как целое число, а затем добавляется как пустая строка? Microsoft.VisualBasic.Right(ButtonName, 2) на самом деле возвращает строку, которая была определена как целое число? Может быть, переопределить Target как строку, а затем проверить, чтобы убедиться, что она не является пустой строкой, прежде чем передавать ее в mciSendString.