GetFileTitleA 関数 (commdlg.h)
指定したファイルの名前を取得します。
構文
short GetFileTitleA(
[in] LPCSTR unnamedParam1,
[out] LPSTR Buf,
[in] WORD cchSize
);
パラメーター
[in] unnamedParam1
種類: LPCTSTR
ファイルの名前と場所。
[out] Buf
種類: LPTSTR
ファイルの名前を受け取るバッファー。
[in] cchSize
種類: WORD
lpszTitle パラメーターが指すバッファーの長さ (文字数)。
戻り値
型: short
関数が成功した場合の戻り値は 0 です。
ファイル名が無効な場合、戻り値は不明です。 エラーが発生した場合、戻り値は負の数になります。
lpszTitle パラメーターが指すバッファーが小さすぎる場合、戻り値は正の整数で、必要なバッファー サイズを文字数で指定します。 必要なバッファー サイズには、終端の null 文字が含まれます。
注釈
GetFileTitle は、有効なファイル名でのみ呼び出す必要があります。無効なファイル名を使用すると、未定義の結果になります。
ファイルの名前に必要なバッファー サイズを取得するには、 lpszTitle を NULL に設定し、 cchSize を 0 に設定して 関数を呼び出します。 関数は、必要なサイズを返します。
GetFileTitle は、システムがユーザーにファイル名を表示するために使用する文字列を返します。 表示名に拡張子が含まれるのは、ファイル名を表示するユーザーの設定である場合のみです。 つまり、返される文字列は、ファイル システム関数の呼び出しで使用されている場合、ファイルを正確に識別できない可能性があります。
lpszTitle バッファーが小さすぎる場合、GetFileTitle は表示名を保持するために必要なサイズを返します。 ただし、必要なサイズと lpszFile バッファーで最初に指定された文字の間には、保証された関係はありません。 たとえば、lpszTitle を NULL に設定し、cchSize を 0 に設定して GetFileTitle を呼び出し、戻り値をインデックスとして lpszFile 文字列に使用しないでください。 通常、 strrchr、 wcsrchr、 _mbsrchrなどの C ランタイム ライブラリ関数を使用すると、同様の結果 (および優れたパフォーマンス) を実現できます。
注意
commdlg.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして GetFileTitle を定義します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | commdlg.h (Windows.h を含む) |
Library | Comdlg32.lib |
[DLL] | Comdlg32.dll |
API セット | ext-ms-win-shell-comdlg32-l1-1-1 (Windows 10 バージョン 10.0.14393 で導入) |
こちらもご覧ください
概念
参照