< ファイル名に使用できない文字を判断する | ダイアログのデフォルトボタンを変更する >

October 5, 2005

PathAddExtension の挙動

PathAddExtension という関数がある。パスの最後に拡張子を追加するというもの。

BOOL PathAddExtension(
    LPTSTR pszPath,
    LPCTSTR pszExtension
);
pszPath
[in, out] 拡張子を追加する対象となる null 終端文字列を格納したバッファのポインタ。
pszExtension
[in] 拡張子を格納した文字列のポインタ。拡張子はピリオドから始まっている必要がある。

戻り値は、拡張子を追加した場合は TRUE、以外は FALSE が返る。

注意しなきゃなんないのは

Remarks
If there is already a file extension present, no extension will be added. If the pszPath points to a NULL string, the result will be the file extension only. If pszExtension points to a NULL string, an ".exe" extension will be added.

すでに拡張子が付いてる場合は、この関数はさらに拡張子を付けることをしない。つまり、ファイル名にピリオドを含みたい場合には不適だ("MyAppVer1.1.exe"とかさ)。ユーザに入力されたファイル名に拡張子を付けるような場合に使うのはやめた方がいい。

トラックバック

このエントリーにトラックバック:
http://frog.raindrop.jp/cgi-bin/mt/mt-tb.cgi/104

コメント

コメントする

※ コメントスパム対策のため、コメント本文はおはよう、こんにちわ、こんばんわのいずれかより始めるようにしてください。

name:
email:

※ 必要ですが、表示しません。

url:
情報を保存する ?