| ¿øÇü |
BOOL ReadFile(HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped); |
| MFC ¿øÇü |
ÇØ´çÇÏ´Â ÇÔ¼ö ¾øÀ½ |
| Àμö |
¢ºhFile : ÀаíÀÚ ÇÏ´Â ÆÄÀÏÀÇ ÇÚµé. ÀÌ ÆÄÀÏÀº GENERIC_READ ¾×¼¼½º ±ÇÇÑÀ¸·Î ¿¾î¾ß ÇÑ´Ù. ¢ºlpBuffer : Àд µ¥ÀÌÅ͸¦ ÀúÀåÇÒ ¹öÆÛÀÇ Æ÷ÀÎÅÍ, ÃæºÐÇÑ ±æÀ̸¦ °¡Áö°í ÀÖ¾î¾ß ÇÑ´Ù. ¢ºnNumberOfBytesToRead : ÀаíÀÚ ÇÏ´Â ¹ÙÀÌÆ® ¼ö ¢ºlpNumberOfBytesRead : ½ÇÁ¦·Î ÀÐÀº ¹ÙÀÌÆ® ¼ö¸¦ ¸®ÅϹޱâ À§ÇÑ Ãâ·Â¿ë Àμö. ReadFileÀº È£Ãâ Áï½Ã ÀÌ °ªÀ» 0À¸·Î ¸¸µç´Ù. ºñµ¿±â ÀÔÃâ·ÂÀ» ÇÏÁö ¾ÊÀ» °æ¿ì ÀÌ Àμö´Â NULL·Î ÁÙ ¼ö ¾øÀ¸¸ç ¹Ýµå½Ã DWORDÇü º¯¼ö¿¡ ´ëÇÑ Æ÷ÀÎÅ͸¦ Á¦°øÇØ¾ß ÇÑ´Ù. ¢ºlpOverlapped : ºñµ¿±â ÀÔÃâ·ÂÀ» À§ÇÑ OVERLAPPED ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍ. ÆÄÀÏÀ» FILE_FLAG_OVERLAPPED Ç÷¡±×·Î ¿¾úÀ¸¸é ÀÌ ±¸Á¶Ã¼¸¦ ¹Ýµå½Ã Á¦°øÇØ¾ß ÇÑ´Ù. ºñµ¿±â ÀÔÃâ·ÂÀ» »ç¿ëÇÏÁö ¾ÊÀ» °æ¿ì NULLÀ» ÁÖ¸é µÈ´Ù. |
| ¸®ÅÏ |
¼º°øÇϸé 0ÀÌ ¾Æ´Ñ °ªÀ» ¸®ÅÏÇÑ´Ù. ¸¸¾à ¸®ÅϰªÀÌ 0ÀÌ ¾Æ´Ñµ¥ ½ÇÁ¦ ÀÐÀº ¹ÙÀÌÆ®°¡ 0À̶ó¸é ÆÄÀÏ Æ÷ÀÎÅͰ¡ ³¡ºÎºÐ(EOF)ÀÎ °ÍÀÌ´Ù. ½ÇÆÐÇϸé 0À» ¸®ÅÏÇÑ´Ù. |
| ¼³¸í |
ÆÄÀϷκÎÅÍ µ¥ÀÌÅ͸¦ Àд´Ù. ÁÖ·Î µ¿±âÀûÀÎ ÀԷ¿¡ »ç¿ëÇϹǷΠµ¥ÀÌÅ͸¦ ¿ÏÀüÈ÷ Àбâ Àü¿¡´Â ¸®ÅÏÇÏÁö ¾Ê´Â´Ù. ºñµ¿±â ÀԷ¿¡ »ç¿ëÇÒ °æ¿ì´Â Áï½Ã ¸®ÅÏÇÑ´Ù. ÆÄÀÏ Æ÷ÀÎÅÍ À§Ä¡¿¡¼ºÎÅÍ µ¥ÀÌÅ͸¦ ÀÐÀ¸¸ç ´Ù ÀÐÀº ÈÄ ½ÇÁ¦ ÀÐÀº ¹ÙÀÌÆ® ¼ö¸¸Å ÆÄÀÏ Æ÷ÀÎÅ͸¦ À̵¿½ÃÄÑ ÁØ´Ù. ´Ü, ºñµ¿±â ÀÔÃâ·ÂÁßÀÏ ¶§´Â ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ÆÄÀÏ Æ÷ÀÎÅ͸¦ Á÷Á¢ À̵¿½ÃÄÑ ÁÖ¾î¾ß ÇÑ´Ù. ´ÙÀ½ ¿¹Á¦´Â Cµå¶óÀ̺êÀÇ ·çÆ® Æú´õ¿¡ ÀÖ´Â boot.ini ÆÄÀÏÀ» ÀÐ¾î ¸Þ½ÃÁö ¹Ú½º·Î º¸¿©ÁØ´Ù.
LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam)
{
HDC hdc;
PAINTSTRUCT ps;
HANDLE hFile;
TCHAR buf[32000]={0,};
DWORD dwRead;
switch(iMessage) {
case WM_CREATE:
return 0;
case WM_LBUTTONDOWN:
hFile=CreateFile("c:\\boot.ini",GENERIC_READ,0,NULL,
OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
if (hFile!=INVALID_HANDLE_VALUE) {
ReadFile(hFile,buf,1024,&dwRead,NULL);
CloseHandle(hFile);
MessageBox(hWnd,buf,"ÀÐÀº °á°ú",MB_OK);
}
return 0;
case WM_PAINT:
hdc=BeginPaint(hWnd, &ps);
EndPaint(hWnd, &ps);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
}
return(DefWindowProc(hWnd,iMessage,wParam,lParam));
}
|
| Âü°íÇÔ¼ö |
CreateFile, WriteFile |
| Ç÷§Æû | 95ÀÌ»ó |
| ÂüÁ¶ |
|
|
written by http://www.winapi.co.kr
|