파일을 클립보드로 복사하기
여기저기 뒤적거려서 어찌어찌 구현 했는데.. 한글 파일명이 안되서 개고생 했다 -_-;
부연설명 없다. 알아서들 파악해서 쓰시라~ -ㅅ-);;
- void _CopyFileToClipboard( LPCTSTR lpszFileName )
- {
- #ifdef _UNICODE
- DROPFILES dobj = { 20, { 0, 0 }, 0, 1 };
- #else
- DROPFILES dobj = { 20, { 0, 0 }, 0, 0 };
- #endif
- int nLen = static_cast<int>( _tcslen( lpszFileName ) *sizeof(TCHAR) );
- int nGblLen =sizeof(dobj) + nLen + 1; //lots of nulls and multibyte_char
- HGLOBAL hGbl = GlobalAlloc(GMEM_ZEROINIT|GMEM_MOVEABLE|GMEM_DDESHARE, nGblLen);
- LPTSTR sData = (LPTSTR)::GlobalLock(hGbl);
- memcpy( sData, &dobj, 20 );
- memcpy( (LPSTR)(sData+20), lpszFileName, nLen );
- ::GlobalUnlock(hGbl);
- if( OpenClipboard( NULL ) )
- {
- EmptyClipboard();
- SetClipboardData( CF_HDROP, hGbl );
- CloseClipboard();
- }
- }
'소프트웨어 개발' 카테고리의 다른 글
| Windows OS Version 알아내기 (7) | 2009/04/13 |
|---|---|
| CrateDirectory 응용 (4) | 2009/04/08 |
| 파일을 클립보드로 복사하기 (5) | 2009/04/06 |
| Connection String이 필요할땐? (5) | 2009/04/03 |
| std::string의 ReplaceAll 함수 (2) | 2009/04/02 |
| File Size 출력 - StrFormatByteSize (4) | 2009/04/01 |

Tag //

Comment List
걍 Ctrl+C, Ctrl+V 하면 되는거 아냐? ㅋㅋㅋ
역시 깔끔하셔 -_-
읽기 주셔서 감사합니다. 좋은 하루 되세요 ... ^ ^
수박 겉 핥기
멋진 작품을 계속