0

リモート ドライブ (SkyDrive など) との間でファイルをコピーするユーティリティを作成しています。ファイルを上書きしようとすると、通常の「ファイルが存在します。Y/N を上書きしますか」というメッセージ ボックスが表示されます。代わりに標準の Windows ファイル上書きダイアログを使用することは可能ですか? 3 つのオプション (コピーして置き換える、コピーしない、コピーするが両方を保持する) と、より詳細なサイズ/日付情報を使用して? それとも、それを複製するために独自のフォームを作成する必要がありますか? (正直なところ、私はこれを 2 日間探していました。自分で書いた方がずっと早かったでしょう。)

明確にするために:選択したときにそのダイアログを表示する必要があります-表示したくない場合や、ファイルを上書きしたい場合があります。

可能であれば、これが C# / .NET で動作することを望みます。ただし、管理されていないソリューションしか存在しない場合は、それも使用します。

4

1 に答える 1

2

はい、可能です!これは、Send to Dropboxのために作成した小さなアドオン ユーティリティで、Explorer で右クリックしてファイルを Dropbox フォルダーに送信するために作成しました。

SHFileOperation.csをプロジェクトにコピーすると、次のように呼び出すことができます。

ShellFileOperation.CopyItems(source, target);

source複数のファイル/ディレクトリを持つことができます。各項目は引用符 (") で囲む必要があります。

target宛先ディレクトリです。

例:

ShellFileOperation.CopyItems("\"c:\\foo.txt\" \"c:\\bar.txt\"", "d:\\xyz");
于 2013-08-16T19:02:32.417 に答える