vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Re: mciSendString macht nicht das, was es soll. 
Autor: Griever
Datum: 05.07.07 00:53

Ich verzweifle gleich.

Trotz option-angaben funktioniert es garnicht. Sowie ich irgendwelche Statusinformationen des Songs abfragen will, bekomme ich die besagte Fehlermeldung.

Hier mein aktueller Code:

Option Explicit
Option Strict On
 
Imports System
Imports System.Windows.Forms
Imports Microsoft.VisualBasic.Strings
 
Public Class SoundFile
    Private Declare Function mciSendString Lib "winmm.dll" Alias _
      "mciSendStringA" (ByVal cmd As String,ByVal rsl As String,ByVal rsl_start _
      As Int32,ByVal hwdcallback As Int32) As Int32
 
    Private str_alias As String
    Public ReadOnly Property Length As Long
        Get
            Dim sBuffer As String = Space(256)
            mciSendString("set " & str_alias & " time format" & _
              "milliseconds",sBuffer,256,0)
>            mciSendString("status " & str_alias & " length",sBuffer,256,0)
            Return(CLng(sBuffer.Trim()))
        End Get
    End Property
    Public ReadOnly Property Position As Long
        Get
            Dim sBuffer As String
            mciSendString("set " & str_alias & " time format" & _
              "milliseconds",sBuffer,255,0)
>            mciSendString("status " & str_alias & " position",sBuffer,255,0)
            Return(CLng(sBuffer.Trim()))
        End Get
    End Property
    Private Function randomNumber() As String
        Dim firstPart,secondPart,lastPart As String
        Dim r As New Random()
        firstPart = Microsoft.VisualBasic.Conversion.Hex(r.Next( _
          100000,999999)).Trim().ToLower()
        Return(firstPart)
    End Function
	Public Sub New(ByVal AudioFile As String,Optional ByVal DefaultVolume As Long _
  = 1000)
	    str_alias = "audiofile" & randomNumber() & "mp3neo"
	    Try
	        Dim N As String = Chr(34)
	        If mciSendString("open " & N & AudioFile & N & " alias " & _
  str_alias,Nothing,0,0) = 0 Then
    	        If mciSendString("setaudio " & str_alias & " volume to " & _
    DefaultVolume,Nothing,0,0) = 0 Then
    	            If mciSendString("set " & str_alias & " time format" & _
    "milliseconds",Nothing,0,0) <> 0 Then
        	            MessageBox.Show("Fehler bei der Initialisierung des" & _
        "Songs","Fehler (Code" & _
        "0x00000003)",MessageBoxButtons.Ok,MessageBoxIcon.Error)
        	            mciSendString("close " & str_alias,Nothing,0,0)
    	            End If
    	        Else
    	            MessageBox.Show("Fehler bei der Initialisierung des" & _
      "Songs","Fehler (Code" & _
      "0x00000002)",MessageBoxButtons.Ok,MessageBoxIcon.Error)
    	            mciSendString("close " & str_alias,Nothing,0,0)
    	        End If
	        Else
	            MessageBox.Show("Fehler bei der Initialisierung des Songs","Fehler" & _
  "(Code 0x00000001)",MessageBoxButtons.Ok,MessageBoxIcon.Error)
	        End If
	    Catch
	    End Try
	End Sub
 
	Public Overloads Function AudioPlay() As Boolean
	    If mciSendString("play " & str_alias & " from 0",Nothing,0,0) = 0 Then
	        Return(True)
	    Else
	        Return(False)
	    End If
	End Function
	Public Overloads Function AudioPlay(ByVal FromPosition As Long) As Boolean
	    If FromPosition <= Me.Length - 10 And FromPosition >= 0 Then
    	    If mciSendString("play " & str_alias & " from 0",Nothing,0,0) = 0 Then
    	        Return(True)
    	    Else
    	        Return(False)
    	    End If
	    End If
	End Function
End Class
Die Besagten Stellen sind mit > markiert. Ich habe ein kleines Testprojekt dazugebastelt, was direkt auf diese Klasse zugreift:

(code im nachfolgenden Post)

Ich bitte um Rat. Hilfeee!

MFG
Griever
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
mciSendString macht nicht das, was es soll.1.133Griever04.07.07 12:37
Re: mciSendString macht nicht das, was es soll.745Maywood04.07.07 15:50
Re: mciSendString macht nicht das, was es soll.761Griever04.07.07 18:53
Re: mciSendString macht nicht das, was es soll.733Griever05.07.07 00:53
Re: mciSendString macht nicht das, was es soll.746Griever05.07.07 00:53
Re: mciSendString macht nicht das, was es soll.759Maywood05.07.07 12:14
Re: mciSendString macht nicht das, was es soll.726Griever05.07.07 16:54
Re: mciSendString macht nicht das, was es soll.1.096Maywood06.07.07 11:34
Des Problems Lösung ;D729Griever08.07.07 05:02

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel