AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi E/A Fehler-32 Was ist das?
Thema durchsuchen
Ansicht
Themen-Optionen

E/A Fehler-32 Was ist das?

Ein Thema von hedie · begonnen am 31. Dez 2006 · letzter Beitrag vom 31. Dez 2006
Antwort Antwort
hedie

Registriert seit: 12. Dez 2005
Ort: Schweiz
1.024 Beiträge
 
Delphi XE6 Starter
 
#1

E/A Fehler-32 Was ist das?

  Alt 31. Dez 2006, 15:06
Hallo

Ich programmiere einen Musik Player der seine Lieder und Pfade von Listboxen bekommt.

Doch wenn ich meine Random (also zufällig) funktion verwende dan wechselt er das lied zwar einwandfrei aber es
kommt immer eine Fehler meldung

E/A Fehler-32 mit einem OK button aber das lied läuft gewechselt im hintergrund.

Der Code ist dieser

Delphi-Quellcode:
var
ran:integer;
begin
ran := random(listbox1.Items.Capacity);
if mp.Position = MP.Length then begin
Listbox1.Selected[ran] := true;
mp.FileName := Listbox2.Items.Strings[ran];
mp.Open;
mp.Play;
RID3(mp.FileName);
Label1.Caption := TitleTag;
Label2.Caption := ArtistTag;
if Settings.ReadBool('SETTINGS','BALLOON',False) = True then begin
TI.BalloonHint := (Label1.Caption + ' ' + Label2.Caption);
TI.ShowBalloonHint;
end;
sleep(100);
end;
mp ist der MediaPlayer
RID3 ist Read ID3 also für den Titel Etc...
Settings ist eine INI datei
TI ist ein TrayIcon

Es klappt eigentlich alles also wenn ich zb. manuell umschalte benutze ich in etwa den gleichen code
und da kommt kein E/A Fehler-32

Ausgeführt wird dieser Code von einem Timer der auf 1000MS steht


ich hoffe ihr seht den Fehler rascher als ich



Vielen dank
Claudio Hediger
Claudio
Tu was du nicht lassen kannst
- http://endasmedia.ch
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#2

Re: E/A Fehler-32 Was ist das?

  Alt 31. Dez 2006, 15:17
Ich nehm mal an das es an deinem "RID3"-Teil liegt. E/A-Fehler sind Datei ein -und Ausgabe Fehler.
Du bzw. dein Prg. wird wolh in einer Datei lesen oder schreiben die dafür nict "Vorgesehen" ist.
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: E/A Fehler-32 Was ist das?

  Alt 31. Dez 2006, 15:18
Forensuche: [dp]E/A Fehler-32[/dp]
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#4

Re: E/A Fehler-32 Was ist das?

  Alt 31. Dez 2006, 15:20
Zitat von Luckie:
Forensuche: [dp]E/A Fehler-32[/dp]
Wirklich aufschlussreich

EA-Fehler 32 ist eine "Sharing Violation", das bedeutet, dass die Datei gerade noch von einem anderen oder deinem Programm offen gehalten wird.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
hedie

Registriert seit: 12. Dez 2005
Ort: Schweiz
1.024 Beiträge
 
Delphi XE6 Starter
 
#5

Re: E/A Fehler-32 Was ist das?

  Alt 31. Dez 2006, 15:21
Perfekt es war der RID3 Teil

So habs herausgefunden was zu ändern war

Delphi-Quellcode:
var
ran:integer;
begin
ran := random(listbox1.Items.Capacity);
if mp.Position = MP.Length then begin
Listbox1.Selected[ran] := true;
mp.FileName := Listbox2.Items.Strings[ran];
mp.Open; <---- HIER IST DIE DATEI SCHO IN VERWENDUNG
mp.Play;
RID3(mp.FileName); <---- HIER WILL ER SIE ERST ÖFFNEN
Label1.Caption := TitleTag;
Label2.Caption := ArtistTag;
if Settings.ReadBool('SETTINGS','BALLOON',False) = True then begin
TI.BalloonHint := (Label1.Caption + ' ' + Label2.Caption);
TI.ShowBalloonHint;
end;
sleep(100);
end;
Und zwar so

Delphi-Quellcode:
var
ran:integer;
begin
ran := random(listbox1.Items.Capacity);
if mp.Position = MP.Length then begin
Listbox1.Selected[ran] := true;
mp.FileName := Listbox2.Items.Strings[ran];
RID3(mp.FileName); <--------------------
mp.Open; -
mp.Play; -
                   <--------------------
Label1.Caption := TitleTag;
Label2.Caption := ArtistTag;
if Settings.ReadBool('SETTINGS','BALLOON',False) = True then begin
TI.BalloonHint := (Label1.Caption + ' ' + Label2.Caption);
TI.ShowBalloonHint;
end;
sleep(100);
end;
Claudio
Tu was du nicht lassen kannst
- http://endasmedia.ch
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz