c# - "This file came from another computer and might be blocked to protect this computer."- 如何以编程方式在 C# .net 中删除此属性?

标签 c# .net windows exe

<分区>

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

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

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

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

谢谢

最佳答案

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

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

您可以在此处找到有关如何发生这种情况以及一些方法(包括使用代码)的更多信息:http://weblogs.asp.net/dixin/archive/2009/03/14/understanding-the-internet-file-blocking-and-unblocking.aspx

关于c# - "This file came from another computer and might be blocked to protect this computer."- 如何以编程方式在 C# .net 中删除此属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22394418/

相关文章:

c# - TCP 连接停止工作

c - 为什么编译器创建一个变量 "twice"?

windows - 大文件的大量文件句柄 - 潜在问题?

c# - 如何在 asp.net 中使用 C# 代码将参数传递给 JavaScript 函数?

c# - 在 Entity Framework (4.1) 中具有一对多双向关系的优点和缺点是什么?

c# - IOException 使用 .NET 将大文件从 UNC 路径读取到字节数组中

c# - WCF 客户,持有引用与否?

c# 访问所有可用的 css 列表或属性集合

windows - Heroku - 推送到 git 存储库时出现 fatal error

c# - 在UWP中处理未处理的异常-Windows 10