Mal wieder ein Überlaufproblem

meilon

Erfahrenes Mitglied
Hi
ich weiß ja nun schon, dass das füllen einer Variable/Eigenschaft mit einem zu großem Wert 'Überlauf' bedeutet. Aber bei meinem Problem kann ich nichts dergleichen feststellen!

Ich bin dabei einen Player für Audio zu basteln. Mithilfe von WMP ist das ja auch nicht gerade schwierig. Nun wollte ich zur Anzeige der Position heine HScroll verwenden. Progressbar geht deswegen nicht, weil man damit nicht scrollen kann!

Ich benutze einen Timer, um diese zu aktualisieren. Leider kommt sehr oft ein Überlauf! Manchmal funktioniert es auch, wobei es nicht an der File liegt die ich abspiele!

Hier meine Versuche:
Code:
SlidePos.Value = CInt(Int(WMP.Controls.currentPosition) / Int(WMP.currentMedia.duration) * 100)
SlidePos.Value = Int(Int(WMP.Controls.currentPosition) / Int(WMP.currentMedia.duration) * 100)
SlidePos.Value = WMP.Controls.currentPosition) / WMP.currentMedia.duration * 100
SlidePos.Value = Int(WMP.Controls.currentPosition) / Int(WMP.currentMedia.duration) * 100
Wenn also jemand n Tipp für mich hatt, wäre ich sehr dankbar

mfg
 
Das ist mal ein komisches Problem!
Soweit ich weiß ist die Value-Eigenschaft ja als Integer-Wert definiert.
Ist es denn so, dass wenn eine Datei bis zum Ende gespielt ist, die Werte WMP.Controls.currentPosition und IntWMP.currentMedia.duration den gleichen Wert haben?
 
soweit komme ich ja gar nicht! Gleich wenn die Datei geöffnet wird, wird abgespielt und nach keiner Sekunde kommt der Überlauf
 
Lass dir doch vaml vom Debugger die Werte ausgeben, die in WMP.Controls.currentPosition und IntWMP.currentMedia.duration drin stehen, wenn der Fehler auftritt. Am Besten postest du die Werte auch gleich mal hierrein.
 
Die Werte kann ich nicht sagen! Weil, sobald der überlauf stattfindet, kommt ne Fehlermeldung, aber die Musik spielt weiter. Und somit ändern sich im Code auch die Werte der Eigenschaften.

Durch nen Tipp von nem Kumpel habe ich jetzt ein On Error Resume Next in den Timer eingebaut, was diesen Fehler wohl ignoriert!
 
Original geschrieben von Shakie
Lass dir doch vaml vom Debugger die Werte ausgeben, [...].

Hier wird oft von nem Debugger gesprochen, wo finde ich den denn?
Sorry bin halt nen Anfänger :(
Ist vielleicht auch doof die Frage, aber was soll ich machen!
 
[tutorial]

Wenn einem das Programm Fehlermeldungen bringt, die nicht gewollt sind und die man sich nicht erklären kann, geht man in den Debug Modus. Dafür einfach F8 drücken, dann wird das Programm in Einzelschritten ausgeführt. Dann kann man sehen wo was schief läuft. Dort sollte man aber Timer deaktivieren!

Und wenn man eine Fehlermeldung bekommt, ist da auch ein Button "Debugger" o.ä., merke mir das nicht so! Und wenn man da darauf klickt, wird einem die Zeile gelb hervorgehoben, wo was schief gelaufen ist!

[/tutorial]
 
Zurück