我想限制某人可以选择的文件夹在我的应用程序中设置其默认保存路径。有没有一种类别或方法可以让我检查访问权限,并且限制用户的选项或者在他们做出选择后显示错误。 FileSystemSecurity.AccessRightType是否有可能?使用FolderBrowserDialog限制对某些文件夹的访问
2
A
回答
1
由于FolderBrowserDialog
是一个相当封闭的控件(它打开一个模式对话框,是否有东西,并让你知道用户选择了什么),我不认为你会有太多的运气拦截用户可以选择或看到。你总是可以让自己的自定义控制,当然;)
至于测试,如果他们有机会获得一个文件夹
private void OnHandlingSomeEvent(object sender, EventArgs e)
{
DialogResult result = folderBrowserDialog1.ShowDialog();
if(result == DialogResult.OK)
{
String folderPath = folderBrowserDialog1.SelectedPath;
if (UserHasAccess(folderPath))
{
// yay! you'd obviously do something for the else part here too...
}
}
}
private bool UserHasAccess(String folderPath)
{
try
{
// Attempt to get a list of security permissions from the folder.
// This will raise an exception if the path is read only or do not have access to view the permissions.
System.Security.AccessControl.DirectorySecurity ds =
System.IO.Directory.GetAccessControl(folderPath);
return true;
}
catch (UnauthorizedAccessException)
{
return false;
}
}
我要指出,从这个其他的StackOverflow question获得UserHasAccess
功能的东西。
+1
非常感谢。这看起来不错。我可以显示一条消息并重置为默认值。至于自定义控件...也许在一两年内。 –
+0
这实际上也解决了另一个问题。当人们想要上传目录或文件时,我可以调用相同的方法来查看是否允许它们。再次感谢。 –
相关问题
- 1. 使用NSOpenPanel限制对某些文件夹的访问
- 2. 将某些用户的文件访问权限限制到某些文件夹
- 3. 如何限制用户对某些文件夹的SSH访问
- 4. CakePHP站点使用.htaccess限制对某些文件的访问
- 5. 限制对某些用户的访问
- 6. SVN - 如何限制用户访问某些文件夹?
- 7. 限制对某些用户的文件访问
- 8. 限制对某些用户配置文件的访问
- 9. 使用密码限制对某些页面的访问[JSP/Servlet]
- 10. ActiveAdmin:限制对某些AdminUser访问某些资源?
- 11. 用count限制某些操作访问?
- 12. 如何限制对codeigniter文件夹中的文件的访问
- 13. 限制某些java包的访问
- 14. 限制访问public_html内的文件夹
- 15. 如何限制访问的文件夹
- 16. 限制Hadoop中的文件夹访问
- 17. 在web.config中限制对文件/文件夹的访问
- 18. 限制-Wsuggest属性对某些文件
- 19. 如何以root身份设置子文件夹并限制某些访问
- 20. 如何限制对drupal中某些用户的内容访问?
- 21. Can Views可用于限制对某些指标的访问吗?
- 22. 限制某些用户对页面的访问
- 23. 基于用户限制对表中某些行的访问
- 24. 限制某些用户对SVN的访问
- 25. 限制用户对文件夹的访问在PHP
- 26. 限制访问某些.aspx页
- 27. 限制访问某些路由值
- 28. MVC 5限制访问文件夹
- 29. 如何限制文件夹访问
- 30. apache文件夹访问限制
让用户选择他们想要访问的任何位置会不会更好?毕竟,这是他们的电脑。通过一切手段提供一个你认为合理的默认,但让他们有最后的发言权。 – DavidK
这是为了防止用户挑选他们无权访问的文件夹,但是根本没有显示它? –
@DavidK我必须允许用户设置一个默认的保存路径,但该软件是为了在学校和学院(如我所在的学校)限制访问某些文件夹的情况下实施的。 –