ich habe an der Wand einen PC mit Touchscreen hängen. Leider gibts keinen vernünftig zu bedienenden MP3 Player, also habe ich ihn mir selbst porgrammiert. Der PC ist also meine Stereoanlage. Ich klicke auf ein Song und der läuft dann im Wohnzimmer ab, wenn das Lied zuende ist, kommt das nächste. Einfach, aber mit dicken Fingern zu bedienen und "Hausfrauenkompatibel"
Nun das Problem. Wir hatten ne Feier und die Musik lief - war der Hingucker, bis der Player einfach ausging - Programm stürtzte ohne Fehlermeldung ab. Bum ! Also neugestartet und weiter - kann ja mal sein. Nach 10 Liedern gleiches Problem - aus die Maus. Dann wieder neu gestartet und diesmal nach 13 Songs - also Wahllos - hatte nix mit den MP3s zu tun. Ich habe dann gedacht ich hätte unsauber Programmiert. Also schrieb ich den Player neu mit PB5 64BIT. Siehe da - gleicher Effekt. nach 8 Songs kam der Absturz, dann nach 11, dann nach 10. MediaPlayer spielte aber alles ab....
Ich habe dann gedacht, das Design ists (Colorgadget etc) also raus damit. Player sah komisch aus, aber gleiches Problem, dann habe ich die Fonts rausgenommen (LoadFont) und nur noch auf Standard gelassen - auch keine Besserung. Buttons ihne JPEG gemacht. Auch nix.... boah. Kann ja nur noch MOVIE() Lib sein, also MCI genommen - ZACK Programm stürtzte wieder ab. Das gibt es doch nicht !!
Bin ja schlau, habe das Programmin reinstes Basic umgeschrieben und allen Schnickschnack (Design, Repeat und Co, Textanzeige etc) rausgelassen. UND : auch das Abspielen der Songs ist raus. Er tut nur noch so alsob das File abgespielt wird, aber er zählt nur die Zeit ab. Ist die Zeit genau so wie die Spielzeit simuliert er das nächste Lied.
3x raten was passiert :

Hier mein absolut popeliger Code für PB5 (64 Bit) ohne irgendwas anderes.... nur die Songs könnt Ihr ja ändern.
WO IST MEIN FEHLER ?? Ich dreh durch !!
Code: Alles auswählen
Dim file$(40)
Procedure lang(Path$)
Protected AudioFileLength$ = Space(256)
mciSendString_("open " + Chr(34) + Path$ + Chr(34) + " type MPEGVideo alias mp3audio", #Null, #Null, #Null)
mciSendString_("status mp3audio length", @AudioFileLength$, 256, #Null)
mciSendString_("close mp3audio", #Null, #Null, #Null)
ProcedureReturn Val(AudioFileLength$)/1000
EndProcedure
hwnd=OpenWindow(0,0,0, 1280,1024, "MP3",#PB_Window_BorderLess)
CreateGadgetList(hwnd)
ContainerGadget(40,10,250,270,764)
ListIconGadget(0,0,0, 290, 827, "Interpret",280,#PB_ListIcon_FullRowSelect|#PB_ListIcon_AlwaysShowSelection|#PB_ListIcon_GridLines)
AddGadgetItem(0,-1,"Neuer Ordner")
CloseGadgetList()
ContainerGadget(41,290,250,1260,764)
ListIconGadget(1, 0,0,1280, 827, "Nummer",0,#PB_ListIcon_FullRowSelect|#PB_ListIcon_AlwaysShowSelection|#PB_ListIcon_GridLines)
AddGadgetColumn(1,1,"Interpret",400)
AddGadgetColumn(1,2,"Titel",400)
CloseGadgetList()
StringGadget(3, 10, 145, 1260, 75, "",#PB_Text_Center|#PB_String_BorderLess);Titel
StringGadget(2, 10, 80, 1260, 75, "",#PB_Text_Center|#PB_String_BorderLess);Sanger
ButtonGadget(24, 490, 10, 110, 60, "x");ende
StringGadget(31, 920,22, 170, 50, "00:00:00",#PB_String_BorderLess);time
TextGadget(32,920,10,120,16,"Spielzeit :")
file$(001)="D:\MP3s\Neuer Ordner\001. Rihanna - Diamonds.mp3"
file$(002)="D:\MP3s\Neuer Ordner\002. Psy - Gangnam style.mp3"
file$(003)="D:\MP3s\Neuer Ordner\003. Pink - Try.mp3"
file$(004)="D:\MP3s\Neuer Ordner\004. Alicia Keys - Girl On Fire.mp3"
file$(005)="D:\MP3s\Neuer Ordner\005. Emeli Sand - Read All About It (pt. Iii).mp3"
file$(006)="D:\MP3s\Neuer Ordner\006. The Script Feat William - Hall Of Fame.mp3"
file$(007)="D:\MP3s\Neuer Ordner\007. Birdy - People Help The People.mp3"
file$(008)="D:\MP3s\Neuer Ordner\008. Will.I.Am Feat. Britney Spears - Scream & Shout.mp3"
file$(009)="D:\MP3s\Neuer Ordner\009. Adele - Skyfall.mp3"
file$(010)="D:\MP3s\Neuer Ordner\010. Seeed - Augenbling.mp3"
file$(011)="D:\MP3s\Neuer Ordner\011. Cro - Einmal Um Die Welt.mp3"
file$(012)="D:\MP3s\Neuer Ordner\012. Marteria, Yasha & Miss Platnum - Lila Wolken.mp3"
file$(013)="D:\MP3s\Neuer Ordner\013. Klangkarussell - Sonnentanz.mp3"
file$(014)="D:\MP3s\Neuer Ordner\014. Robbie Williams - Candy.mp3"
file$(015)="D:\MP3s\Neuer Ordner\015. David Guetta Ft Sia - She Wolf (Falling To Pieces) (Extended Version).mp3"
file$(016)="D:\MP3s\Neuer Ordner\016. Gossip - Move In The right Direction.mp3"
file$(017)="D:\MP3s\Neuer Ordner\017. Bruno Mars - Locked Out Of Heaven.mp3"
file$(018)="D:\MP3s\Neuer Ordner\018. Laing - Morgens Immer Muede.mp3"
file$(019)="D:\MP3s\Neuer Ordner\019. Swedish House Mafia Feat. John Martin - Dont You Worry Child.mp3"
file$(020)="D:\MP3s\Neuer Ordner\020. Icona Pop Feat. Charli Xcx - I Love It.mp3"
file$(021)="D:\MP3s\Neuer Ordner\022. Lena - Stardust.mp3"
file$(022)="D:\MP3s\Neuer Ordner\023. Mrs. Greenbird - Shooting Stars & Fairy Tales.mp3"
file$(023)="D:\MP3s\Neuer Ordner\024. Sido - Bilder Im Kopf.mp3"
file$(024)="D:\MP3s\Neuer Ordner\025. Flo Rida - I Cry.mp3"
file$(025)="D:\MP3s\Neuer Ordner\026. Lenka - Everything At Once.mp3"
file$(026)="D:\MP3s\Neuer Ordner\027. Nick Howard - Unbreakable.mp3"
file$(027)="D:\MP3s\Neuer Ordner\028. Taylor Swift - We Are Never Ever Getting Back Together.mp3"
file$(028)="D:\MP3s\Neuer Ordner\029. Kesha - Die Young.mp3"
file$(029)="D:\MP3s\Neuer Ordner\030. Asaf Avidan & The Mojos - One Day-Reckoning Song (Wankelmut Remix).mp3"
file$(030)="D:\MP3s\Neuer Ordner\033. Lykke Li - I Follow Rivers (The Magician Remix).mp3"
file$(031)="D:\MP3s\Neuer Ordner\039. Carly Rae Jepsen - Call Me Maybe.mp3"
file$(032)="D:\MP3s\Neuer Ordner\040. lana Del Rey - Summertime Sadness.mp3"
file$(033)="D:\MP3s\Neuer Ordner\048. Loreen - Euphoria.mp3"
dat=33
SetGadgetText(3,Str(dat)+" MP3s gefunden...")
main:
Repeat
Delay(1)
If play>0
;- wenn Lied zuende
If laufzeit=lan
If CountGadgetItems(1)>0
reihe+1
If reihe>CountGadgetItems(1)
reihe=0
EndIf
EndIf
SetGadgetState(1,reihe)
MP3$=GetGadgetItemText(1,reihe,0)
Goto Sprung
EndIf
S=Val(FormatDate("%ss",Date()))
If S<>altss
laufzeit+1
SS+1
altss=S
If SS=60
SS=0
MM+1
If MM=60
MM=0
HH+1
EndIf
EndIf
SetGadgetText(31,RSet(Str(HH),2,"0")+":"+RSet(Str(MM),2,"0")+":"+RSet(Str(SS),2,"0"))
EndIf
EndIf
event = WindowEvent()
Select event
Case #PB_Event_Gadget
Select EventGadget()
Case 0
ver$=GetGadgetText(0)
If ver$<>""
ClearGadgetItems(1)
If ver$="alle MP3s"
suche$=".mp3"
Else
suche$="\"+ver$+"\"
EndIf
suchen:
For t=1 To dat
If FindString(UCase(file$(t)),UCase(suche$),1)<>0
x=CountString(file$(t),"\")
AddGadgetItem(1,-1,Str(t)+Chr(10)+ReplaceString(RemoveString(StringField(file$(t),x+1,"\"),".mp3")," - ",Chr(10)))
While WindowEvent()<>0:Wend
EndIf
Next
EndIf
Case 1
MP3$=GetGadgetText(1)
If Trim(MP3$)<>"" And MP3$<>altmp3$
Sprung:
altmp3$=MP3$
mp3=Val(MP3$)
If file$(mp3)<>altfile$
play+1
If play=3
play=1
EndIf
altfile$=file$(mp3)
song$=RemoveString(GetFilePart(file$(mp3)),".mp3")
temp$=ReplaceString(song$," - ","§")
sanger$=Trim(StringField(temp$,1,"§"))
titel$=Trim(StringField(temp$,2,"§"))
laufzeit=0
pause=0
SS=-1
MM=0
HH=0
lan=lang(file$(mp3))
min=Int(lan/60)
sek=lan-(min*60)
SetGadgetText(32,"Spielzeit : "+RSet(Str(min),2,"0")+":"+RSet(Str(sek),2,"0"))
reihe=GetGadgetState(1)
EndIf
SetGadgetText(2,sanger$)
SetGadgetText(3,titel$)
EndIf
Delay(1000); warten sonst ist Moviestatus noch 0
Case 24
End
EndSelect
EndSelect
ForEver