?? midi.cpp
字號(hào):
#include "StdAfx.h"
#include <WINDOWS.H>
#include <Stdio.h>
#define __MIDI_H__
#include "midi.h"
#include "Tool.h"
#include "Hong_Sub.h"
/*ΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ
MCI俊 皋矯瘤甫 焊辰促.
ΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ*/
int MciSend (UINT DeviceID, UINT wMessage, DWORD dwParam1, DWORD dwParam2)
{
static char BufStr [256] ;
DWORD Error ;
HWND hwnd;
Error = mciSendCommand (DeviceID, wMessage, dwParam1, dwParam2) ;//MCI 俊 皋矯瘤甫 焊郴綽 竊薦.
if (Error)
{
hwnd = (HWND) ((LPMCI_GENERIC_PARMS) dwParam2)->dwCallback ;
if (!mciGetErrorString(Error, BufStr, sizeof (BufStr))) // 俊礬啊 慣積且版快 貿(mào)府秦林綽 竊薦.
strcpy (BufStr, "Not Needed Known Error ") ;
// MsgBox(BufStr);
}
return Error == 0 ;
}
/*ΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ
MCI厘摹甫 楷促.
ΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ*/
UINT OpenMidi(HWND hwnd, char * FileName, DWORD dwFlags)
{
BOOL bSuccess ;
MCI_OPEN_PARMS open ;
open.dwCallback = (DWORD) hwnd ;
open.lpstrDeviceType = "sequencer";
open.lpstrElementName = FileName ;
open.lpstrAlias = NULL ;
bSuccess = MciSend (0, MCI_OPEN, MCI_OPEN_ELEMENT | MCI_OPEN_TYPE | dwFlags,
(DWORD) (LPMCI_OPEN_PARMS) & open) ;
DeviceID = bSuccess ? open.wDeviceID : 0 ;
return DeviceID;
}
/*ΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ
MCI 厘摹甫 楷林茄促.
ΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ*/
int PlayMidi (HWND hwnd, DWORD dwFlags, DWORD dwFrom,DWORD dwTo)
{
MCI_PLAY_PARMS play ;
play.dwCallback = (DWORD) hwnd ;
play.dwFrom = dwFrom ;
play.dwTo = dwTo ;
return MciSend (DeviceID, MCI_PLAY, dwFlags, (DWORD) (LPMCI_PLAY_PARMS) &play) ;
}
/*ΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ
MCI 厘摹甫 摧綽促. 皋葛府俊 棵扼樂綽 葛電 瀝焊甫 瘤款促.
ΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ*/
void CloseMidi(HWND hwnd)
{
MCI_GENERIC_PARMS generic ;
generic.dwCallback = (DWORD) hwnd ;
MciSend (DeviceID,MCI_CLOSE,MCI_WAIT,(DWORD)(LPMCI_GENERIC_PARMS)&generic);
DeviceID = 0;
}
//-----------------------
//-----------------------
//----------------------- Midi Play....
//-----------------------
//-----------------------
//-----------------------
static int GetFileNameInNameFile( char *filename, char *namefile, int no )
{
FILE *fp;
int c=0;
fp = Fopen( namefile,"rt");
if( fp )
{
while( fscanf( fp, "%s", filename ) != EOF )
{
if( c == no ) { fclose( fp ); return 1; }
c++;
}
fclose(fp);
}
return 0;
}
/*ΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ
ΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ*/
void StopBackMusic( HWND hwnd )
{
CurMidi = -1;
CloseMidi( hwnd );
}
/*ΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ
//Volume狼 裹困 : 0 <= vol < 128
ΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ*/
void VolumeBackMusic( int vol )
{
}
/*ΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ
ΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ*/
void PlayBackMusic( HWND hwnd, int no )
{
char MidiName[ MAX_PATH];
char temp[ MAX_PATH];
return;//
if( SysInfo.music == 0 ) return;
if( GetFileNameInNameFile( temp, "./sound/midi.nam", no ) )
{
sprintf( MidiName, "./sound/%s", temp );
StopBackMusic( hwnd );
CurMidi = no;
OpenMidi( hwnd, MidiName, MCI_WAIT );
PlayMidi( hwnd, MCI_NOTIFY, 0, 0);
}
else
{
JustMsg( "Midi Number Over.." );
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -