14

我需要在 .net 2003 中将文件移动到回收站

我从refrence添加了microsft.visualbasic.runtime dll,但我无法获取filesystem.deletedirectory,那么该怎么办..有人可以帮助我吗?

4

5 回答 5

24

我发现了这个,不知道它是否有效,但值得一试。

using Microsoft.VisualBasic;

string path = @"c:\myfile.txt";
FileIO.FileSystem.DeleteDirectory(path, FileIO.UIOption.OnlyErrorDialogs, RecycleOption.SendToRecycleBin);

编辑:Nifle 的明智之言:只记得添加对 Microsoft.VisualBasic.dll 的引用

于 2009-04-06T11:27:04.097 回答
2

基本上,在顶部的引用和实际调用方法之间,您需要全名(当然是在添加库之后)

您可以完全调用它:

Microsoft.VisualBasic.FileIO.FileSystem.DeleteDirectory(
    path,
    FileIO.UIOption.OnlyErrorDialogs,
    RecycleOption.SendToRecycleBin);

或者,您可以将引用与其他引用一起添加到顶部:

using Microsoft.VisualBasic.FileIO

接着

FilesSystem.DeleteDirectory( etc );
于 2012-05-17T09:57:18.677 回答
0

可能会帮助你。看起来您需要添加对 Microsoft.VisualBasic.dll 的引用或使用 P/Invoke。

于 2009-04-06T11:21:41.410 回答
0

你有没有

using Microsoft.VisualBasic.FileIO;

在您的页面顶部?

于 2009-04-06T11:51:32.587 回答
0

使用

FileIO.FileSystem.DeleteDirectory(path, FileIO.UIOption.OnlyErrorDialogs, RecycleOption.SendToRecycleBin);

需要:00:00:00.4036573删除一个文件。使用

[DllImport("shell32.dll", CharSet = CharSet.Auto)]
private static extern int SHFileOperation(ref SHFILEOPSTRUCT FileOp);

只需要:00:00:00.1107684删除一个文件。

在那里可以找到一个实现: 将文件发送到回收站

于 2012-08-18T22:59:45.743 回答