All pastes #767498 Raw Edit

Someone

public cpp v1 · immutable
·published 2007-11-09 20:16 UTC
rendered paste body
#ifndef _INC_MMSYSTEM#include "mmsystem.h"#endifBOOL MyFunction(DWORD someparam) {BOOL result=false;HMODULE hWinMM=LoadLibrary("winmm.dll");if (hWinMM) {	typedef MMRESULT (WINAPI*midiOutPrepareHeader_Type)(HMIDIOUT hmo,LPMIDIHDR lpMidiOutHdr,UINT cbMidiOutHdr);	typedef MMRESULT (WINAPI*midiOutLongMsg_Type)(HMIDIOUT hmo,LPMIDIHDR lpMidiOutHdr,UINT cbMidiOutHdr);	typedef MMRESULT (WINAPI*midiOutUnprepareHeader_Type)(HMIDIOUT hmo,LPMIDIHDR lpMidiOutHdr,UINT cbMidiOutHdr);		midiOutPrepareHeader_Type pmidiOutPrepareHeader=(midiOutPrepareHeader_Type)GetProcAddress(hWinMM,"midiOutPrepareHeader");	midiOutLongMsg_Type pmidiOutLongMsg=(midiOutLongMsg_Type)GetProcAddress(hWinMM,"midiOutLongMsg");	midiOutUnprepareHeader_Type pmidiOutUnprepareHeader=(midiOutUnprepareHeader_Type)GetProcAddress(hWinMM,"midiOutUnprepareHeader");		if (pmidiOutPrepareHeader && pmidiOutLongMsg && pmidiOutUnprepareHeader 	{		//we now have all 3 function pointers and can call those functions...		MMRESULT ret=pmidiOutPrepareHeader(something);		if (ret==something) 		{			ret=pmidiOutLongMsg(something);			pmidiOutUnprepareHeader(something);		}		result=(ret==0);	}		FreeLibrary(hWinMM);}return result;}