阻止用户使用桌面、文档、下载、电影、音乐、图片、公共文件夹
Posted
技术标签:
【中文标题】阻止用户使用桌面、文档、下载、电影、音乐、图片、公共文件夹【英文标题】:Preventing User From Using Desktop, Documents, Download, Movies, Music, Pictures, Public Folders 【发布时间】:2015-05-01 23:34:11 【问题描述】:我有一个 NSView 下拉框,它允许用户拖放文件夹。我不希望他们在用户文件夹中拖放诸如〜电影,〜音乐,〜桌面......之类的文件夹。如果我运行以下代码,我得到的是分配给我的沙盒应用程序的电影文件夹。这不是我想要的。
NSURL *url = [[NSURL alloc] init];
url = [[[NSFileManager defaultManager] URLsForDirectory: NSMoviesDirectory inDomains:NSUserDomainMask] lastObject];
NSLog(@"%@",[url path]);
我可以通过多次重复 stringByDeletingLastPathComponent 来获得上面带有“url”的正确文件夹。但是有没有更简单的方法来获取该文件夹?有没有办法阻止用户完全使用本地用户文件夹中的这些文件夹?
非常感谢
【问题讨论】:
你说了很多你不希望用户做的事情,但这里想要的结果是什么?具体来说。 假设我有一个允许用户删除文件和文件夹的应用程序。应用程序不应删除这些文件夹。这些文件夹中的文件可能是可以接受的。在这种情况下,我需要列出一些需要拒绝的路径。 【参考方案1】:answer to How do I get the users home directory in objective-c in a sandboxed app? 向您展示了如何确定用户主目录的路径。一旦你有了它,你就可以使用它来确定被删除的文件夹是否是主文件夹的直接子文件夹并拒绝它。
HTH
【讨论】:
以上是关于阻止用户使用桌面、文档、下载、电影、音乐、图片、公共文件夹的主要内容,如果未能解决你的问题,请参考以下文章
如何删除Windows10操作系统资源管理器中的下载图片音乐文档视频桌面3D对象这7个文件夹