2016-06-17 5 views
0

메신저 vb.net에서 Windows MCI API를 사용하여 사운드 파일이 종료되었는지 확인하려고 시도했지만 잘못된 구문의 장치 이름 (263 - MCIERR_INVALID_DEVICE_NAME)이 계속 표시됩니다. 또는 다른 오류가 있습니까?mci 상태 위치/길이가 실패했습니다

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 

답변

0

대상이 정수로 정의 된 다음 null 문자열로 추가되는 이유는 무엇입니까? Microsoft.VisualBasic.Right (ButtonName, 2)는 실제로 정수로 정의 된 문자열을 반환합니까? Target을 문자열로 다시 정의한 다음 mciSendString에 전달하기 전에 null 문자열이 아닌지 확인하십시오.