유니코드 문자열을 UTF-8으로 변환하기
WideCharToMultiByte 함수를 호출할 때 첫 번째 인자로 CP_UTF8을 지정하면 된다. UTF-8은 유니코드의 인코딩 스킴 중의 하나로 쉽게 말하자면 문자열 스트림에서 0을 빼고 표현하는 방법이라고 볼 수 있다.
탐색기에서 Drag & Drop 을 받기
프로그램의 초기화시에 DragAcceptFiles(hWnd, TRUE) 함수를 호출한다. 첫 번째 인자인 hWnd는 드롭의 타겟이 되는 윈도우의 핸들이다.
탐색기로부터 파일이 드롭되는 순간에 WM_DROPFILES 메시지가 날라온다. 이를 처리한다.
case WM_DROPFILES :
{
POINT pt;
//
// 어느 위치에 드롭되었는지 그 항목을 알아낸다.
//
if (DragQueryPoint((HDROP)wParam, &pt))
{
UINT i = 0;
//
// 모두 몇 개의 파일이 드롭되었는지 알아낸다.
// 만일 폴더가 드롭되었다면 폴더의 이름만 넘어온다.
//
UINT uCount = DragQueryFile((HDROP)wParam, 0xFFFFFFFF, NULL ,0);
for(i = 0;i < uCount;i++)
{
//
// 드롭된 파일의 이름을 알아온다.
//
DragQueryFile((HDROP)wParam, i, buffer ,255);
//
// 드롭된 파일 이름을 출력해본다.
//
MessageBox(hWnd, buffer, _T("File Name"), MB_OK);
}
}
//
// drag and drop 작업을 끝낸다.
//
DragFinish((HDROP)wParam);
break;
}
//Drag&drop을 더 사용할 필요가 없어지면 DragAcceptFiles를 호출한다.
DragAcceptFiles(hWnd, FALSE);
WideCharToMultiByte 함수를 호출할 때 첫 번째 인자로 CP_UTF8을 지정하면 된다. UTF-8은 유니코드의 인코딩 스킴 중의 하나로 쉽게 말하자면 문자열 스트림에서 0을 빼고 표현하는 방법이라고 볼 수 있다.
탐색기에서 Drag & Drop 을 받기
프로그램의 초기화시에 DragAcceptFiles(hWnd, TRUE) 함수를 호출한다. 첫 번째 인자인 hWnd는 드롭의 타겟이 되는 윈도우의 핸들이다.
탐색기로부터 파일이 드롭되는 순간에 WM_DROPFILES 메시지가 날라온다. 이를 처리한다.
case WM_DROPFILES :
{
POINT pt;
//
// 어느 위치에 드롭되었는지 그 항목을 알아낸다.
//
if (DragQueryPoint((HDROP)wParam, &pt))
{
UINT i = 0;
//
// 모두 몇 개의 파일이 드롭되었는지 알아낸다.
// 만일 폴더가 드롭되었다면 폴더의 이름만 넘어온다.
//
UINT uCount = DragQueryFile((HDROP)wParam, 0xFFFFFFFF, NULL ,0);
for(i = 0;i < uCount;i++)
{
//
// 드롭된 파일의 이름을 알아온다.
//
DragQueryFile((HDROP)wParam, i, buffer ,255);
//
// 드롭된 파일 이름을 출력해본다.
//
MessageBox(hWnd, buffer, _T("File Name"), MB_OK);
}
}
//
// drag and drop 작업을 끝낸다.
//
DragFinish((HDROP)wParam);
break;
}
//Drag&drop을 더 사용할 필요가 없어지면 DragAcceptFiles를 호출한다.
DragAcceptFiles(hWnd, FALSE);
'Windows > MFC' 카테고리의 다른 글
dll 에서 messagebox 사용하기 (0) | 2013.10.02 |
---|---|
CPU 정보 위치 REGISTRY (0) | 2013.10.02 |
Environments information path (registry) (0) | 2013.10.02 |
CButtonMenu (0) | 2013.10.02 |
global memory CreateFileMapping MapViewOfFile (0) | 2013.10.02 |