| 
/*--------------------------------*/
/*  クリップボード・テキスト取得  */
/*--------------------------------*/
#include <stdio.h>
#include <windows.h>
void  main( )
{
  char   str[1024];            // テキスト文字列
  HANDLE chandl=NULL;
  int ir,len,len0=1024;
    ir=OpenClipboard(NULL);                             // クリップボード開く
    if ( ir==0 ) goto LF;
    chandl=GetClipboardData(CF_TEXT);                   // クリップボードデータ取得
    if ( chandl==NULL ) goto L9;                        // 空
    GlobalLock(chandl);                                 // グローバルメモリオブジェクトロック
    len=strlen(chandl);
    if ( len==0 ) goto L9;
    if ( len<len0 ) strcpy(str,chandl);
         else       sprintf(str,"%.*s",len0,chandl);
    GlobalUnlock(chandl);                               // グローバルメモリオブジェクト解除
    printf("\n【クリップボード内容】\n%s",str);
L9: CloseClipboard( );                                  // クリップボード閉じる
LF: ;
}
    |