掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ファイル名の取得に時間がかかる (ID:32954)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
いつもお世話になります。 Windows98などでは、関連付けでファイルを開く場合、ParamStrに格納 されるファイル名が、短いファイル名になってしまっています。 その短いファイル名を長いファイル名に直すため、以下のような関数を 使用しています。 これは、ローカルハードディスクだと一瞬で取得できるのですが、ネット ワーク上にあるファイルだと、10秒近くも時間がかかってしまいます。 なぜ時間がかかるのか、よく分かっていません。(正常にファイル名を取得 出来てはいるのです。) 遅い理由についてご指摘いただけると幸いです。 ※ファイル名のサンプル 「\\1600-11\新規フォルダ\一時保存\Macro.txt」 ※環境はWindowsXP + Delphi 6 Personal です。 ------------------------------------------------- function TForm1.GetPathName(FileName: String): String; var SearchRec: TSearchRec; begin Result := FileName; if (Copy(FileName, Length(FileName), 1) = '\') then Result := Copy(FileName, 1, Length(FileName) - 1); // ↓ここの判定を、if (Result = '\') then // ↓などとしてもうまく行かなかったです。 if (Length(Result) = 2) and (Copy(Result, 2, 1) = ':') then exit; if FindFirst(Result, faAnyFile, SearchRec) = 0 then Result := GetPathName(ExtractFilePath(Result)) + '\' + SearchRec.Name; FindClose(SearchRec); end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.