⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 midi.cpp

📁 网络游戏龙族 完整的登陆器 C++ 源代码
💻 CPP
字号:
#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)))   // 俊矾啊 惯积且版快 贸府秦林绰 窃荐.
			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.." );
	}
}



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -