I do have dcx, otherwise I wouldn't be able to run this. Your update do not solve the look of the dialog, I'm using windows 7.
If the disc button is supposed to load a folder, why not using $sdir instead of $sfile? you're overcomplicating the extraction of the folder in dir::path anyway.
To expand on my previous post, you're using /splay's queue to queue all the song from the folder, it's possible that /splay will fail (for example if the filename has two consecutives space in it), you should be using the goto label :error to catch the error from /splay to be able to recover from it, and ignore that filename.
Some improvements/criticisms:
-need a list with the song where we can double click them to listen to them, with option such as shuffle, shuffle all etc (look up DCX treeview),
-need an option to set up the volume (/vol)
-need an option to play the previous song
-need a progress bar (dcx) for the song so we can start playing from any position.
-play/pause button should be merged into one button
Thank for this information(splay fail) i patch immediatly and report you nick for thanks.This is only a version 0.1 in the future i add a trakbar and list for select song alway based on hashtable system.For Dialog i'dont understand the problem i send my code to others friend and works well ... for the rest of remains simple and functional.
This is how it look for me here: https://dl.dropboxusercontent.com/u/4249275/pic/mp3.png
Since it's in italian it's a bit hard to understand, what's the point of the button on the left with a disc? When i load a song using this button nothing happens. When I then click on the play button, i get all the song from the path of the filename i previously selected using that disck button echoed. Then if you actually get /splay to fail, it will also get DCX to fail with sendmessage.