GetClipboardFormatName クリップボードのフォーマットから名前を取得

Cの宣言:

int GetClipboardFormatName(
	UINT format,
	LPTSTR FormatName,
	int FormatNameSize);

説明:

formatで指定したクリップボードのフォーマットからフォーマット名を求め、FormatNameを返す。

本関数は、定義済み以外のフォーマットに対して有効である。

引数の意味は以下の通り。
format フォーマットを表す値。
FormatName 取得結果のフォーマット名。
FormatNameSize FormatNameのサイズ。

戻り値は、取得結果の文字列の長さである。関数の実行に失敗した場合、0が返される。

Cのサンプル:

EnumClipboardFormatsを使用して、クリップボードにあるフォーマットのリストを表示する。また、定義済みでないフォーマットについては、GetClipboardFormatNameを使用して、名前を取得する。
void DispClipFormats(void)
{
	int format;
	char buf[1000];

	OpenClipboard(NULL);

	format = EnumClipboardFormats(0);

	while(format != 0) {
		switch(format) {
			case CF_TEXT: printf("CF_TEXT\n"); break;
			case CF_BITMAP: printf("CF_BITMAP\n"); break;
			case CF_METAFILEPICT: printf("CF_METAFILEPICT\n"); break;
			case CF_SYLK: printf("CF_SYLK\n"); break;
			case CF_DIF: printf("CF_DIF\n"); break;
			case CF_TIFF: printf("CF_TIFF\n"); break;
			case CF_OEMTEXT: printf("CF_OEMTEXT\n"); break;
			case CF_DIB: printf("CF_DIB\n"); break;
			case CF_PALETTE: printf("CF_PALETTE\n"); break;
			case CF_PENDATA: printf("CF_PENDATA\n"); break;
			case CF_RIFF: printf("CF_RIFF\n"); break;
			case CF_WAVE: printf("CF_WAVE\n"); break;
			case CF_UNICODETEXT: printf("CF_UNICODETEXT\n"); break;
			case CF_ENHMETAFILE: printf("CF_ENHMETAFILE\n"); break;
			case CF_HDROP: printf("CF_HDROP\n"); break;
			case CF_LOCALE: printf("CF_LOCALE\n"); break;
			case CF_MAX: printf("CF_MAX\n"); break;
			case CF_OWNERDISPLAY: printf("CF_OWNERDISPLAY\n"); break;
			case CF_DSPTEXT: printf("CF_DSPTEXT\n"); break;
			case CF_DSPBITMAP: printf("CF_DSPBITMAP\n"); break;
			case CF_DSPMETAFILEPICT: printf("CF_DSPMETAFILEPICT\n"); break;
			case CF_DSPENHMETAFILE: printf("CF_DSPENHMETAFILE\n"); break;
			default:
				GetClipboardFormatName(format, buf, 1000);
				printf("%s\n", buf);
		}

		format = EnumClipboardFormats(format);
	}

	CloseClipboard();
}
(original text:1999/04/05 更新)

本ドキュメントの内容は保証しません。本ドキュメントによって生じた結果について、一切の責任を負いません。