| |
検索
辞書
交通
地図
天気
|
|
クリップボードにテキストを貼り付ける
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;
}
|
|
|
|