목차
[Debug]
1.txt
2.txt
test.exe
test.ilk
test.obj
test.pch
test.pdb
vc60.idb
vc60.pdb
젓가락행진곡.txt
학교종.txt
학교종H.txt
1.txt
2.txt
test.cpp
test.dsp
test.dsw
test.ncb
test.opt
test.plg
젓가락행진곡.txt
학교종.txt
학교종H.txt
test.exe로 게임을 실행합니다.
파일 23, 폴더 1
4.71MB
1.txt
2.txt
test.exe
test.ilk
test.obj
test.pch
test.pdb
vc60.idb
vc60.pdb
젓가락행진곡.txt
학교종.txt
학교종H.txt
1.txt
2.txt
test.cpp
test.dsp
test.dsw
test.ncb
test.opt
test.plg
젓가락행진곡.txt
학교종.txt
학교종H.txt
test.exe로 게임을 실행합니다.
파일 23, 폴더 1
4.71MB
본문내용
test.cpp
#include
#include
#include
#include
#pragma comment(lib, "winmm.lib")
typedef struct {
int instrument; // 악기
int key; // 키(건반위치 0~7)
int note; // 음(미디), 재생한 후에는 0으로
DWORD time; // 나오는시간
int oldpos; // 처음은 -1이고, 노트를 그린경우 어디에 그렸는지 Y좌표 표시 (나중에 지워주기위해)
int manual;
} NOTE;
extern "C" WINBASEAPI HWND WINAPI GetConsoleWindow();
void CALLBACK MidiOutProc(HMIDIOUT MidiOut, UINT Msg, DWORD Instance, DWORD Param1, DWORD Param2)
{
}
void OutputError(MMRESULT mmrErrCode)
{
char szErrMsg[128];
midiInGetErrorText(mmrErrCode, (LPSTR)szErrMsg, sizeof(szErrMsg));
MessageBox(0, szErrMsg, "Error", MB_OK);
}
void GetDevCaps(HMIDIOUT hDevOutHandle, MIDIOUTCAPS *Caps)
{
UINT uDeviceID = -1;
MMRESULT mmResult = midiOutGetID(hDevOutHandle, &uDeviceID);
if(mmResult != MMSYSERR_NOERROR)
{
OutputError(mmResult);
return;
}
if(uDeviceID & 0x80000000)
return;
if(midiOutGetDevCaps(uDeviceID, Caps, sizeof(MIDIOUTCAPS)) != MMSYSERR_NOERROR)
OutputError(mmResult);
}
#include
#include
#include
#include
#pragma comment(lib, "winmm.lib")
typedef struct {
int instrument; // 악기
int key; // 키(건반위치 0~7)
int note; // 음(미디), 재생한 후에는 0으로
DWORD time; // 나오는시간
int oldpos; // 처음은 -1이고, 노트를 그린경우 어디에 그렸는지 Y좌표 표시 (나중에 지워주기위해)
int manual;
} NOTE;
extern "C" WINBASEAPI HWND WINAPI GetConsoleWindow();
void CALLBACK MidiOutProc(HMIDIOUT MidiOut, UINT Msg, DWORD Instance, DWORD Param1, DWORD Param2)
{
}
void OutputError(MMRESULT mmrErrCode)
{
char szErrMsg[128];
midiInGetErrorText(mmrErrCode, (LPSTR)szErrMsg, sizeof(szErrMsg));
MessageBox(0, szErrMsg, "Error", MB_OK);
}
void GetDevCaps(HMIDIOUT hDevOutHandle, MIDIOUTCAPS *Caps)
{
UINT uDeviceID = -1;
MMRESULT mmResult = midiOutGetID(hDevOutHandle, &uDeviceID);
if(mmResult != MMSYSERR_NOERROR)
{
OutputError(mmResult);
return;
}
if(uDeviceID & 0x80000000)
return;
if(midiOutGetDevCaps(uDeviceID, Caps, sizeof(MIDIOUTCAPS)) != MMSYSERR_NOERROR)
OutputError(mmResult);
}
소개글