Unity3D中如何将文件发送到回收站
How to send a file to the recycle bin in Unity3D
Send a File to the Recycle Bin
是显而易见的搜索结果。我已经尝试了提供的包装器,但是当它被引入 Unity 时它有错误,IntPtr 不为初学者编译。我还导入了 Microsoft.VisualBasic
并且它依赖于 System.Deployment
到我的项目中并且成功调用了
Debug.Log(Microsoft.VisualBasic.FileIO.FileSystem.FileExists(path + "\test.txt"));
Microsoft.VisualBasic.FileIO.FileSystem.DeleteFile(path + "\test.txt", UIOption.OnlyErrorDialogs, RecycleOption.SendToRecycleBin);
但它只是删除文件,并没有进入回收站。 Unity在C盘运行,工程也在C盘。我已经尝试过文件和文件夹,并且已经尝试过 RecycleOption.DeletePermanently
,它确实可以通过调试识别文件和文件夹,但是回收站中没有显示任何内容。
我找到了解决这个问题的最简单方法,就是在项目中添加一个回收站。
由于 Unity 支持长度超过 "Windows Explorer" 的文件名和路径长度,它不会将项目发送到回收站,因为回收站无法容纳它们。
这是 Win32 API 限制。
如果您的 Unity 回收站中有两个同名文件,请创建另一个回收站或子回收站。
这不是一个方便的解决方案,但它确实有效!
我个人解决这个问题的方法是,我在进行时保留项目的版本。然后我可以返回到我的项目的任何以前版本。
Send a File to the Recycle Bin 确实是要走的路。我发现只是
using System;
在我尝试使用 FileOperationAPIWrapper 脚本时丢失了。从那以后,我一直在使用它成功地将文件移动到回收站。
Send a File to the Recycle Bin
是显而易见的搜索结果。我已经尝试了提供的包装器,但是当它被引入 Unity 时它有错误,IntPtr 不为初学者编译。我还导入了 Microsoft.VisualBasic
并且它依赖于 System.Deployment
到我的项目中并且成功调用了
Debug.Log(Microsoft.VisualBasic.FileIO.FileSystem.FileExists(path + "\test.txt"));
Microsoft.VisualBasic.FileIO.FileSystem.DeleteFile(path + "\test.txt", UIOption.OnlyErrorDialogs, RecycleOption.SendToRecycleBin);
但它只是删除文件,并没有进入回收站。 Unity在C盘运行,工程也在C盘。我已经尝试过文件和文件夹,并且已经尝试过 RecycleOption.DeletePermanently
,它确实可以通过调试识别文件和文件夹,但是回收站中没有显示任何内容。
我找到了解决这个问题的最简单方法,就是在项目中添加一个回收站。
由于 Unity 支持长度超过 "Windows Explorer" 的文件名和路径长度,它不会将项目发送到回收站,因为回收站无法容纳它们。
这是 Win32 API 限制。
如果您的 Unity 回收站中有两个同名文件,请创建另一个回收站或子回收站。
这不是一个方便的解决方案,但它确实有效!
我个人解决这个问题的方法是,我在进行时保留项目的版本。然后我可以返回到我的项目的任何以前版本。
Send a File to the Recycle Bin 确实是要走的路。我发现只是
using System;
在我尝试使用 FileOperationAPIWrapper 脚本时丢失了。从那以后,我一直在使用它成功地将文件移动到回收站。