トップへ

  検索 辞書 交通 地図 天気

クリップボードにテキストを貼り付ける
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;
}

トップへ他のサンプルプログラムへ

月に2回程度の更新を目標としています

Copyright(c) Masaki Onishi All rights reserved.