I see a lot of รก's which take the place of spaces. On Tue, Nov 2, 2010 at 6:57 PM, Tyro[a.c.edwards] <nos...@home.com> wrote:
> Hello all, > > >> I would really appreciate some assistance on this. The intent is to > > create a vocabulary/flashcard program with proper pronunciations. > > Pronunciations are saved as individual mp3 files which I want to > > play whenever a new term is displayed. My current attempt is simply > > to get the the file (any mp3 file really) to play. All indication > > form the two references I'm using (http://msdn.microsoft.com/en- > > us/library/dd757161(v=VS.85).aspx and > > http://www.apitalk.com/windows-Programming/Play-Mp3,-Wav,-Wmv,-Mpg,- > > Avi-Etc-Files-In-Win32-Api-Program.html) say that this little script > > is supposed to work. The error codes as reported by mciSendString > > even suggest that it is working, however I'm not hearing any sound > > at all. > > >> suggestions anyone? > > >> import std.stdio : writeln; > > import std.string : cstring = toStringz; > > import std.c.windows.windows; > > >> pragma(lib, "winmm.lib" ); > > >> extern(Windows) { > > uint mciSendStringA( > > LPCTSTR lpszCommand, > > LPTSTR lpszReturnString, > > uint cchReturn, > > HANDLE hwndCallback); > > } > > >> uint mciSendString(string s) > > { > > return mciSendStringA( cstring(s), cast(LPTSTR)null, 0, > > cast(HANDLE)0 ); > > } > > >> void main() > > { > > auto exist = mciSendString("open CC_10_mins.mp3 type > > mpegvideo alias myFile"); > > >> auto succeeded = mciSendString("play myFile"); > > >> auto closed = mciSendString("close myFile"); > > >> writeln( exist, " - ", succeeded, " - ", closed ); > > } > > >> >> PROGRAM OUTPUT > > ============== > > >> when file exists: > > D:\code>play > > 0 - 0 - 0 > > >> when file does not exist: > > D:\code>play > > 275 - 263 - 263 > > This code works for me: import std.stdio; import std.string; import std.c.windows.windows; pragma(lib, "winmm.lib"); extern(Windows) { uint mciSendStringA( LPCTSTR lpszCommand, LPTSTR lpszReturnString, uint cchReturn, HANDLE hwndCallback); } uint mciSendString(string s) { return mciSendStringA( toStringz(s), null, 0, cast(HANDLE)0); } void main() { mciSendString("open erm.mp3 type mpegvideo alias myFile"); mciSendString("play myFile"); char* data; while(true) { mciSendStringA(toStringz("status myFile mode"), data, 128, cast(HANDLE)0); auto result = std.conv.to!string(data); if(result == "playing") Sleep(1000); } mciSendString("close myFile"); }