Hallo,
nutze den SoundPlayer, um remote wav Files mit Meldungen auszugeben.
Der SP wird per IntegerVariable gesteuert, d.h. Integer Werten sind Sounds (die im media Ordner liegen) zugeordnet.
Beispiel: SteuerVariable ist Index
Wert -> Zuordnung
0->a (zugeordnet zu a.wav)
1->b (b.wav)
2->c (c.wav)
Problem: mitunter funktioniert es eine Weile, doch dann werden erratisch unterschiedliche Sound Files abgespielt. D.h. z.B. bei Index=0 wird trotzdem b.wav abgespielt.
Ausserdem: wenn ich z.B. dem Media Objekt a per MediaSetFile die Datei d.wav zuordne, dann wird vom SoundPlayer trotzdem a.wav abgespielt - sofern er nicht so oder so b oder c abspielt …
Das Verhalten ist erratisch, auch SendMediaEvent zum Update hilft nicht.
Was mache ich falsch - oder ist das ein Bug?
Danke
Dirk
… habe mit SysInternals FileExplorer verfolgt, was passiert.
Beim Erstzugriff auf eine wav Datei wird diese in …Local Settings/Temp als BorlandSoapAttachment<Nummer>.wav abgelegt., sprich gecached.
Dabei fallen 3 Dinge auf:
-
siehe Bild anbei: hier werden zwei wavs, GO und GZ jeweils neu geladen, aber bei der zweiten wird dann keine neue SpoapAttachment Datei angelegt, sondern die vorige gelesen. Was dazu führt, dass sich die Sounds nicht unterscheiden - was sie natuerlich sollten
-
Bei Schliessen des Designers/ Console werden alle SoapAttachments im Temp Ordner wieder gelöscht - wie das auch sein sollte : allerdings nicht diejenigen mit der Endung .wav
-
Die BorlandSoapAttachment<Nummer>.wav Datei, die als erstes angelegt wird (also die erste erzeugte Cache Datei) bliebt immer gelocked - wird von IPS nicht freigegeben, im Unterschied zu allen folgenden .wav Dateien
Hoffe, das hilft ein wenig beim NAchvollziehen des Fehlers - vermute einen Bug. Benutze IPS 2.1
Über Hinweise oder FB würde ich mich sehr freuen.
Danke
Dirk
… habe es mit IPS 2.0 und 2.1 ausprobiert, mit neuem Formular, mit Neuinstallation etc. - das Fehlerverhalten bleibt; und ist auch , wenn man in die <user>/Local Settings/Temp hineinschaut zumindest anhand der Cache Dateien verfolgbar.
Hat niemand sonst das Problem? Oder war ich zu dumm, irgendetwas zu übersehen?
Wäre wirklich für einen Tip dankbar, komme einfach nicht weiter
Danke
Dirk