|
| |

VB.NET - Ein- und Umsteiger| Mp3 Länge auslesen, Es wurde versucht, im geschützten Speicher zu lesen oder zu | |  | | Autor: Hannibal | | Datum: 10.11.10 20:34 |
| Hallo,
habe ein Problem mit dem auslesen der Länge von Mp3 Dateien. Wenn ich nur eine einzelne Datei auslesen funktioniert alles bestens aber sobald ich Datei für Datei von einem Verzeichnis auslese hängt er nach einer bestimmten Zeit auf.
Habe den Fehler jetzt mal versucht abzufangen und bekomme folgende Meldung
"Es wurde versucht, im geschützten Speicher zu lesen oder zu schreiben. Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist."
Hab die Vermutung das der Speicher nach auslesen der Datei nicht korrekt wieder freigegeben wird.
Hier mal der entscheidende Code, den Rest kann ich auch gerne nachliefern.
Imports System
Imports System.Collections.Generic
Imports System.Text
Public Class Form1
Private Declare Function mciSendString Lib "winmm.dll" Alias _
"mciSendStringA" _
(ByVal lpstrCommand As String, ByVal lpstrReturnString As String, _
ByVal uReturnLength As Integer, _
ByVal hwndCallback As Integer) As Integer
Private Declare Function GetShortPathName Lib "kernel32" Alias _
"GetShortPathNameA" _
(ByVal lpszLongPath As String, ByVal lpszShortPath As String, _
ByVal cchBuffer As Integer) As Integer
Private Function GetMP3Length(ByVal strFileName As String) As Double
Dim strBuffer As String
Dim lRet As Long
Dim sReturn As String
Try
' Da die mciSendString Funktion mit langen Dateinamen
' nicht korrekt arbeitet, muss zuvor der kurze
' 8.3 Dateiname der MP3-Datei ermittelt werden.
strBuffer = Space(255)
lRet = GetShortPathName(strFileName, strBuffer, Len(strBuffer))
If lRet <> 0 Then
strFileName = Microsoft.VisualBasic.Left(strBuffer, InStr( _
strBuffer, vbNullChar) - 1)
End If
' MP3-Datei öffnen
mciSendString("open " & strFileName & _
" type MPEGVideo alias mp3audio", CStr(0), 0, 0)
' Länge der Datei in Millisekunden auslesen
sReturn = Space$(256)
lRet = mciSendString("status mp3audio length", _
sReturn, Len(sReturn), 0&)
' MP3-Datei schliessen
mciSendString("close mp3audio", CStr(0), 0, 0)
GetMP3Length = Val(sReturn)
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Function
.
.
.Nach geschätzten 2000 Dateien tritt der Fehler auf.
Gruß
Hannibal
_____________________________________________________
Programmieren ist heute ein Wettrennen zwischen Programmierern, die versuchen bessere und idiotensicherere Programme zu entwickeln und dem Universum, dass versucht bessere Idioten zu entwickeln |  |
 Mp3 Länge auslesen, Es wurde versucht, im geschützten Speich... | 4.132 | Hannibal | 10.11.10 20:34 |   Re: Mp3 Länge auslesen, Es wurde versucht, im geschützten Sp... | 3.104 | Manfred X | 10.11.10 21:48 |    Re: Mp3 Länge auslesen, Es wurde versucht, im geschützten Sp... | 3.029 | Hannibal | 14.11.10 18:53 |     Re: Mp3 Länge auslesen, Es wurde versucht, im geschützten Sp... | 3.011 | Hannibal | 17.11.10 18:32 |   Eine Alternative mit dem MS APICodePack | 4.317 | Snoopy | 17.11.10 22:45 |    Re: Eine Alternative mit dem MS APICodePack | 3.090 | Hannibal | 18.11.10 17:10 |   Re: Mp3 Länge auslesen, Es wurde versucht, im geschützten Sp... | 3.014 | Hannibal | 18.11.10 19:20 |
 | 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 |
  |
|
vb@rchiv CD Vol.6 vb@rchiv Vol.6
Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
Online-Update-Funktion Entwickler-Vollversionen u.v.m.Jetzt zugreifen Tipp des Monats TOP! Unser Nr. 1 
Neu! sevDataGrid 3.0
Mehrspaltige Listen, mit oder ohne DB-Anbindung. Autom. Sortierung, Editieren von Spalteninhalten oder das interaktive Hinzufügen von Datenzeilen sind ebenso möglich wie das Erstellen eines Web-Reports. Weitere Infos
|
| |
|
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
|
|