它是永远不可能摆脱使用Silverlight的OpenFileDialog文件的全名?(Is it

2019-08-03 17:39发布

我想从Silverlight的打开文件对话框文件的全名,当我尝试的是,Silverlight的抛出了我的错误。

我看到有说这是[安全至关重要]上全名的属性,但我需要显示的完整路径,是真的没有办法,我能做到吗?

Answer 1:

打开文件对话框不会简单地提供全名,因为它不希望你改变这些文件。 使用Silverlight,你只能访问独立存储和文件可能位于该存储以外。 但是,你可以只打开该文件,并将其复制到独立存储,并修改它。
刚发现bassfriend发现这个链接也并张贴以上。 我的错。 话又说回来,链接在谷歌的前20名。 :-)

另一个原因,您将无法获得完整的文件名是因为文件名可能包含敏感信息。 例如,在“我的文档”文件夹中的文件可能会暴露用户的登录名。

基本上,这是一个安全限制。 你不应该绕过它,即使它是可能的。 如果你会发现解决的办法,MS可能会发布一个安全更新,以再次关闭泄漏...



Answer 2:

嗯,是的,Silverlight将不允许您检索完整路径信息。 你的话题似乎与之密切相关的问题 。 也许答案会有阐明你的问题更多的光线。



Answer 3:

Try to use the File property as documented here: Example, MSDN



Answer 4:

Silverlight的打开文件对话框的行为有所不同,以OFD出于安全原因的标准形式。 如果您检索SelectedFile,它实际上返回一个包含文件的名称 ,而不是文件的路径的FileDialogFileInfo对象。 当你想想看,这是非常合情合理的 - 你不希望有人写一段恶意代码,可以得到一个句柄到你的文件系统。



文章来源: Is it never possible to get the FullName from a file using Silverlight OpenFileDialog?