検索 辞書 交通 地図 天気 |
クリップボードにテキストを貼り付ける
Windows VisualC++ でクリップボードにテキストを貼り付けるための関数です. #include "stdafx.h" #include "windows.h" // クリップボードにテキストデータをコピーする関数 BOOL SetClipboardText( const char *Str ) { int BufSize; char *Buf; HANDLE hMem; BufSize = strlen( Str ) + 1; // 確保するメモリのサイズを計算する hMem = GlobalAlloc( GMEM_SHARE | GMEM_MOVEABLE, BufSize ); // 移動可能な共有メモリを確保する if ( !hMem ) return FALSE; Buf = (char *)GlobalLock( hMem ); // 確保したメモリをロックし,アクセス可能にする if ( Buf ) { strcpy( Buf, Str ); // 文字列を複写する GlobalUnlock( hMem ); // メモリのロックを解除する if ( OpenClipboard(NULL) ) { EmptyClipboard(); // クリップボード内の古いデータを解放する SetClipboardData( CF_TEXT, hMem ); // クリップボードに新しいデータを入力する CloseClipboard(); return TRUE; } } return FALSE; } int main(int argc, char* argv[]) { char buffer[32]="Hello World!!"; SetClipboardText(buffer); return 0; } |
| ||