检测文件是否已被操作系统阻止

问题描述 投票:3回答:1

存在一个有趣的问题,由于某种原因,当客户将应用程序部署到他们的计算机上(文件副本部署)时,Windows阻止了所有文件。可以通过右键单击文件,转到属性,然后单击标题为“取消阻止”的按钮来检测到。

我相信这是由于文件从互联网等未知来源传输到计算机上引起的。

有没有一种方法可以检测文件在C#中被阻止?我不确定此“操作系统块”是否设置了特定的文件属性或其他内容。还可以通过某种方式解除阻止文件的权限吗?

注:我知道一个矛盾的地方,用于检查文件是否被阻止的.exe文件本身可能会被阻止,但我希望我的用户至少可以从安装集中取消阻止一个文件!

存在一个有趣的问题,由于某种原因,当客户将应用程序部署到他们的计算机上(文件副本部署)时,Windows阻止了所有文件。可以通过...

c# .net windows security blocked
1个回答
2
投票

在Windows中,此功能是通过具有区域标识符的备用数据流来实现的。 (请参阅Hanselman的解释here)。您只需要检测3或4的区域标识符即可指示该文件已被阻止。

© www.soinside.com 2019 - 2024. All rights reserved.