Windows系统教程指南 每天十分钟 Windows 教程,从入门到精通

没有被指定在 windows 上运行 或者它包含错误

所属主题:开始菜单自定义 Windows 桌面任务栏设置

执行前检查

$ 问题目标: 当 Windows 提示"没有被指定在 windows 上运行 或者它包含错误"时,这...
$ 适用系统: 任务栏

当 Windows 提示"没有被指定在 windows 上运行 或者它包含错误"时,这通常意味着系统无法验证程序的数字签名或兼容性声明。绝大多数情况下,你不需要重装系统或更换硬件——只需调整文件属性中的安全锁定设置,或检查文件来源是否可靠。

问题类型 典型表现 解决优先级
数字签名缺失 下载的安装包或可执行文件无法启动 1. 解除锁定(最常见)
系统兼容性标记 旧版程序在新 Windows 上运行受阻 2. 兼容性设置
文件本身损坏 下载中途中断或存储介质错误 3. 重新下载/验证
组策略限制 企业环境或安全软件拦截 4. 管理员权限/策略调整

开始前确认

在动手操作之前,先确认以下三个前置条件——很多卡住的情况其实绕在这里:

1. 文件来源是否可靠
如果这个文件来自官方渠道(如软件官网、Microsoft Store、GitHub 官方仓库),那大概率只是安全标记问题。如果来自不明链接或第三方下载站,请先考虑风险——解除锁定只在文件本身安全的前提下操作。

2. 当前 Windows 版本
不同版本对可执行文件的检查策略有差异:

  • Windows 10 1809 及以上版本:使用 SmartScreen 和附件管理器双重检查
  • Windows 11 21H2 及以上:对网络下载文件的标记更严格(Zone.Identifier)
  • Windows Server 系列:默认组策略可能阻止未签名程序

3. 管理员权限
大部分解除操作需要管理员账户。如果你用的是标准用户账户,先联系管理员或切换到具有管理员权限的账户。

操作步骤

以下是针对"没有被指定在 windows 上运行 或者它包含错误"最有效的三步操作法,按成功率从高到低排列:

步骤 1:解除文件锁定(成功率约 75%)

这是最直接、最常用的方法,适用于从网络下载的安装包或可执行文件:

  1. 右键点击报错的文件 → 选择"属性"
  2. 在"常规"选项卡底部,找到安全区域
  3. 如果看到"此文件来自其他计算机,可能被阻止以保护该计算机",勾选"解除锁定"
  4. 点击"应用"→"确定"
  5. 重新运行该文件

新手容易卡的地方:如果你的"常规"选项卡底部没有看到"解除锁定"选项,说明文件没有 Zone.Identifier 标记。此时可以跳过此步骤,直接尝试步骤 2。

步骤 2:以管理员身份运行(兼容性提升)

如果解除锁定后仍然报错,或文件本身就没有锁定选项:

  1. 右键点击文件 → 选择"以管理员身份运行"
  2. 如果弹出用户账户控制(UAC)提示,点击"是"
  3. 观察是否正常启动

何时应该用这个方式:适用于那些需要写入系统目录或注册表的安装程序。普通程序不需要这一步。

步骤 3:修改兼容性设置(针对旧版程序)

如果文件是为旧版 Windows(如 Windows 7/8)编写的,在当前系统上可能被误报:

  1. 右键点击文件 → 选择"属性"
  2. 切换到"兼容性"选项卡
  3. 勾选"以兼容模式运行这个程序"
  4. 在其下的下拉菜单中,选择程序原本对应的系统版本(如 Windows 7 或 Windows 8)
  5. 点击"应用"→"确定"
  6. 重新运行文件

兼容性设置的最佳实践:不确定选哪个版本时,从 Windows 7 开始试——绝大多数商业软件在 Windows 7 兼容模式下运行稳定。Windows XP 模式仅用于非常老的程序(2012 年之前发布)。

检查项

如果上述三步法没有解决问题,按以下顺序检查系统环境:

1. 验证文件完整性

  • 对比下载页提供的 SHA256 或 MD5 哈希值
  • 文件大小是否与官方标注一致(右键属性查看)
  • 确认下载过程中没有中断或多次重命名

2. 检查 SmartScreen 状态

  • 打开"Windows 安全中心"→"应用和浏览器控制"
  • 检查"基于声誉的保护"是否开启
  • 如果开启了,尝试暂时关闭后重试(仅在确定文件安全时使用)

3. 查看事件查看器日志

  • Win + R 输入 eventvwr.msc
  • 导航到"Windows 日志"→"应用程序"
  • 筛选最近的事件,错误来源通常是 "Application Error" 或 "Windows Error Reporting"
  • 记录错误代码(如 0xc000007b、0xc0000142),后续按代码搜索精准解决方案

4. 组策略检查(企业环境常见)

  • Win + R 输入 gpedit.msc
  • 导航到"计算机配置"→"管理模板"→"Windows 组件"→"附件管理器"
  • 检查"不保留区域信息"和"文件附件中不执行区域检查"的策略设置
  • 如果被强制启用,需要联系域管理员调整

故障排查

遇到这种报错时,新手最容易卡在三个地方。下面给出具体的检查方法:

卡点 1:解除锁定后依然报错

可能原因:文件本身有数字签名问题,或被防病毒软件实时拦截。

检查方法

  1. 临时禁用防病毒软件的实时保护(任务栏右下角右键退出),然后运行文件
  2. 如果能正常运行,将文件及其安装目录加入防病毒排除项
  3. 如果可以联网,尝试使用"以管理员身份运行"选择"重新下载文件"

卡点 2:没有任何锁定选项

可能原因:文件下载自本地网络驱动器、U盘或直接复制,没有 Zone.Identifier。

检查方法

  1. 在文件所在目录打开 PowerShell(按住 Shift 右键→"在此处打开 PowerShell 窗口")
  2. 输入命令:Get-Item .\文件名.exe -Stream Zone.Identifier
  3. 如果返回空结果,说明文件确实没有网络标记
  4. 此时直接尝试兼容性设置或管理员运行

卡点 3:错误代码直接显示

如果错误信息中包含具体代码,按以下对照表排查:

错误代码 含义 解决方向
0xc000007b 缺少 VC++ 运行库或 32/64 位不匹配 安装 Visual C++ Redistributable(x86 和 x64 都装)
0xc0000142 DLL 初始化失败 更新显卡驱动和 DirectX
0xc0000005 访问违规 检查内存和磁盘错误
0x80070002 文件找不到 文件已被移动或删除
0x80070570 文件已损坏 重新下载或检查存储介质

常见问题

"没有被指定在 windows 上运行 或者它包含错误" 是什么?

这条错误提示本质上是 Windows 的安全检查机制在生效。当你启动一个可执行文件时,系统通过以下三个层次核实其可信度:

  1. 数字签名验证:检查文件是否带有有效的 Authenticode 签名
  2. Zone.Identifier 标记:查看文件是从哪里来的(互联网、本地、U盘)
  3. SmartScreen 声誉检查:对比微软云端数据库判断文件安全性

只要其中任何一层标记为"不信任",系统就会弹出这条提示。它不是文件一定坏了或有病毒——更多时候只是系统缺少足够的"证据"来信任它。

"没有被指定在 windows 上运行 或者它包含错误" 怎么操作?

标准操作流程遵循"先看文件来源→解除锁定→兼容性设置→检查系统环境"的优先级。具体来说:

操作前的判断

  • 如果文件是从官网直接下载的:优先解除文件锁定
  • 如果文件是旧版软件(发布超过 3 年):优先调整兼容模式
  • 如果文件是在 U 盘或网络驱动器上:复制到本地磁盘再运行

操作后的验证

  • 运行后观察是否出现其他报错
  • 检查任务管理器(Ctrl + Shift + Esc)中目标进程是否在后台运行
  • 如果是一个安装程序,确认它是否生成了预期的文件夹和文件

"没有被指定在 windows 上运行 或者它包含错误" 常见错误有哪些?

以下是实际操作中遇到最多的几个情况及其正确处理方式:

错误 1:以为文件坏了就删除重下
频繁删除重下通常没用——因为同一个 Zone.Identifier 会被再次写入。正确的做法是先用上面的步骤解除锁定,确认不可用之后再考虑换源下载。

错误 2:直接关闭 UAC 或 SmartScreen
为了运行一个软件而关闭系统级安全功能,会使整个系统暴露在更大的风险中。只在确认文件 100% 安全时,才临时关闭,操作完成后立即恢复。

错误 3:把 64 位和 32 位版本搞混
如果下载页同时提供 x86 和 x64 版本,而你装错了,大概率会触发数字签名验证失败。检查你的 Windows 版本(设置→系统→关于→系统类型),选择匹配的架构版本。

错误 4:忽略依赖运行库
很多程序静默依赖 Visual C++ Redistributable、.NET Framework 或 DirectX。如果缺少这些运行库,Windows 会以这条错误提示拒绝启动。安装对应的运行库包可以解决相当一部分"疑似损坏"的情况。