“此文件来自另一台计算机,可能会被阻止以保护这台计算机。” - 如何在 C# .net 中以编程方式删除此属性?

use*_*061 7 .net c# windows blocked exe

我用 C# 编写了一个程序。如果用户勾选该框,它会将自身复制到启动。

该应用程序使用注册表项“SOFTWARE\Microsoft\Windows\CurrentVersion\Run”将自身添加到启动中。

它工作正常,除了每次重新启动机器时都会提示用户是否确定要运行该程序,因为它被 Windows 阻止,因为它“来自另一台计算机”。

有什么办法可以通过代码摆脱这个Windows“阻止”标志,以便每次程序尝试自行运行时都不会提示用户?

谢谢

Bre*_*ant 2

下载/复制到计算机时,Windows 会根据文件的来源位置( http://msdn.microsoft.com/en-us/library/dn392609.aspx ) 附加一个区域标识符 ( http://msdn.microsoft.com/en-us/library/dn392609.aspx)。 microsoft.com/en-us/library/ms537183.aspx

为了取消阻止该文件,您必须让用户打开文件属性并单击“取消阻止”按钮,或者自行将其删除。

您可以在这里找到有关如何发生这种情况的更多信息以及一些方法(包括代码):http ://weblogs.asp.net/dixin/archive/2009/03/14/understanding-the-internet-file -阻止和解除阻止.aspx

  • @thepirat000:如果问题发布在这里,答案也应该发布在这里。外部链接应用作附加参考,而不是主要内容。“场外链接还有另一个场外链接,其中包含包含代码的信息。” **这里**不是答案。在我看来,这就像“谷歌说你可以在这里查看并点击链接寻找答案”一样的答案。 (5认同)