Code:
void midiplay(HWND hwnd)
{
HANDLE hFile;
DWORD written;
//DWORD ResSize;
HRSRC hResFind;
HGLOBAL hRes ;
LPVOID hTune;
int ResSize=0;
hResFind=FindResource (hInstance, TEXT ("midkel"),TEXT("MyRes"));
if (hResFind==NULL)
{
MessageBox(hwnd,"Can't Find Resource","Test",MB_OK);
}
hRes = LoadResource (hInstance,hResFind);
if (hRes==NULL)
{
MessageBox(hwnd,"Load Resource Failed","Test",MB_OK);
}
hTune=LockResource (hRes);
if (hTune==NULL)
{
MessageBox(hwnd,"Lock Failed","Test",MB_OK);
}
ResSize = SizeofResource(hInstance, hResFind);
if (ResSize==0)
{
MessageBox(hwnd,"Get Size Failed","Test",MB_OK);
}
hFile=CreateFile("temp.mid",GENERIC_WRITE,0,0,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,0);
if (hFile==NULL)
{
MessageBox(hwnd,"Create File Failed","Test",MB_OK);
}
if (!(WriteFile(hFile,hTune,ResSize,&written,0)))
{
int err=GetLastError();
char buff[1111];
strcpy(buff,"");
sprintf(buff,"%d",err);
MessageBox(hwnd,buff,buff,MB_OK);
}
CloseHandle(hFile);
FreeResource(hRes);
// mciSendString("open \"temp.mid\" type sequencer alias mymidi", 0, 0, 0);
// mciSendString("play mymidi", 0, 0, 0);
}