16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル
"Re: 長いファイル名を取得(ネットワーク対"
この発言は #01117 稀杜 さんの長いファイル名を取得(ネットワーク対応) に対するコメントです
おはようさん。わいわいです。
こないだの #01101 が、参考になりました、ってメールをもらった
んで、ちょと調子に乗ってますです。
ひっじょ〜にトリッキー??なんですが、一応 UNC でもいけます。
ディレクトリ名でもきちんと変換できます。またその場合には、後
尾に '\' が付いて出てきます。
------------------- ここから ------------------------
// LFN への変換
function toLongFileName(fname:string):string;
var
Fp:TSearchRec;
begin
Result:=ExtractFileDir(fname);
fname:=ExtractFileName(fname);
if length(fname)=0 then Exit;
Result:=toLongFileName(Result);
if 0<>FindFirst(Result+fname,faAnyFile,Fp) then begin
Result:=Result+fname+'\';
Exit;
end;
FindClose(Fp);
Result:=Result+Fp.Name;
if (Fp.Attr and faDirectory)<>0 then Result:=Result+'\';
end;
------------------ ここまで ------------------------
Original document by わいわい 氏 ID:(QZC10252)
ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。
Copyright 1996-2002 Delphi Users' Forum
|