パスが255文字を超えると、DelphiアプリケーションでRobocopyを使用してコピーされたファイルがあるかどうかを確認する必要があります。 私はいつもの "If FileExists(MyFile)then ..."を試しましたが、ファイルがあっても常に "false"を返します。デルファイ:ファイルが存在するかどうかをチェックする方法(255文字以上のパス)
また、ファイルの日付を取得しようとしましたが、空の日付と見なすことができる1899/12/30になります。
ファイル検索でも何も返されません。
ご返信ありがとうございます。このソリューションは、e:¥myfilepathなどのローカルパスではうまくいきますが、「If FileExists( '\\?\ UNC \' + MyFile)」の場合でもUNCパスが残っています。 – Fab
ここでUNCパスが正常に動作します。私の答えはあなたが必要なものだと確信しています。他の何かが間違っているでしょう。 '\\?\'接頭辞があると、260の制限をエスケープしました。 –
@Fab: 'MyFile'に標準のUNCパスが含まれている場合、' '\\?\ UNC \' 'プレフィックスの前に' '\\ ''を取り除かなければなりません。 IOW、 '' \\ server \ path''はあなたのコードが現在やっているように '' \\?\ UNC \\\ server \ path''ではなく '' \\?\ UNC \ server \ path''になる必要があります。 –