次の方法で共有


GetClipboardFormatNameA 関数 (winuser.h)

指定した登録済み形式の名前をクリップボードから取得します。 この関数は、指定したバッファーに名前をコピーします。

構文

int GetClipboardFormatNameA(
  [in]  UINT  format,
  [out] LPSTR lpszFormatName,
  [in]  int   cchMaxCount
);

パラメーター

[in] format

型: UINT

取得する形式の種類。 このパラメーターでは、定義済みのクリップボード形式を指定しないでください。

[out] lpszFormatName

型: LPTSTR

形式名を受け取るバッファー。

[in] cchMaxCount

型: int

バッファーにコピーする文字列の最大長 (文字数)。 名前がこの制限を超えると、切り捨てられます。

戻り値

型: int

関数が成功した場合、戻り値はバッファーにコピーされた文字列の長さ (文字数) です。

関数が失敗した場合、戻り値は 0 で、要求された形式が存在しないか、定義済みであることを示します。 拡張エラー情報を取得するには、GetLastError呼び出します。

備考

セキュリティに関する考慮事項

この関数を誤って使用すると、プログラムのセキュリティが損なわれる可能性があります。 たとえば、lpszFormatName バッファーの適切なサイズを誤って計算すると、特にアプリケーションが ANSI と Unicode の両方のバージョンで使用されている場合、バッファー オーバーフローが発生する可能性があります。 また、文字列が cchMaxCount パラメーターより長い場合は切り捨てられ、情報が失われる可能性があることに注意してください。

例については、「クリップボード ビューアーの例」を参照してください。

手記

winuser.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして GetClipboardFormatName を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー winuser.h (Windows.h を含む)
ライブラリ User32.lib
DLL User32.dll
API セットの ext-ms-win-ntuser-misc-l1-1-0 (Windows 8 で導入)

関連項目

クリップボードの

概念

EnumClipboardFormats の

リファレンス

RegisterClipboardFormat