没有被指定在 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%)
这是最直接、最常用的方法,适用于从网络下载的安装包或可执行文件:
- 右键点击报错的文件 → 选择"属性"
- 在"常规"选项卡底部,找到安全区域
- 如果看到"此文件来自其他计算机,可能被阻止以保护该计算机",勾选"解除锁定"
- 点击"应用"→"确定"
- 重新运行该文件
新手容易卡的地方:如果你的"常规"选项卡底部没有看到"解除锁定"选项,说明文件没有 Zone.Identifier 标记。此时可以跳过此步骤,直接尝试步骤 2。
步骤 2:以管理员身份运行(兼容性提升)
如果解除锁定后仍然报错,或文件本身就没有锁定选项:
- 右键点击文件 → 选择"以管理员身份运行"
- 如果弹出用户账户控制(UAC)提示,点击"是"
- 观察是否正常启动
何时应该用这个方式:适用于那些需要写入系统目录或注册表的安装程序。普通程序不需要这一步。
步骤 3:修改兼容性设置(针对旧版程序)
如果文件是为旧版 Windows(如 Windows 7/8)编写的,在当前系统上可能被误报:
- 右键点击文件 → 选择"属性"
- 切换到"兼容性"选项卡
- 勾选"以兼容模式运行这个程序"
- 在其下的下拉菜单中,选择程序原本对应的系统版本(如 Windows 7 或 Windows 8)
- 点击"应用"→"确定"
- 重新运行文件
兼容性设置的最佳实践:不确定选哪个版本时,从 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:解除锁定后依然报错
可能原因:文件本身有数字签名问题,或被防病毒软件实时拦截。
检查方法:
- 临时禁用防病毒软件的实时保护(任务栏右下角右键退出),然后运行文件
- 如果能正常运行,将文件及其安装目录加入防病毒排除项
- 如果可以联网,尝试使用"以管理员身份运行"选择"重新下载文件"
卡点 2:没有任何锁定选项
可能原因:文件下载自本地网络驱动器、U盘或直接复制,没有 Zone.Identifier。
检查方法:
- 在文件所在目录打开 PowerShell(按住 Shift 右键→"在此处打开 PowerShell 窗口")
- 输入命令:
Get-Item .\文件名.exe -Stream Zone.Identifier - 如果返回空结果,说明文件确实没有网络标记
- 此时直接尝试兼容性设置或管理员运行
卡点 3:错误代码直接显示
如果错误信息中包含具体代码,按以下对照表排查:
| 错误代码 | 含义 | 解决方向 |
|---|---|---|
| 0xc000007b | 缺少 VC++ 运行库或 32/64 位不匹配 | 安装 Visual C++ Redistributable(x86 和 x64 都装) |
| 0xc0000142 | DLL 初始化失败 | 更新显卡驱动和 DirectX |
| 0xc0000005 | 访问违规 | 检查内存和磁盘错误 |
| 0x80070002 | 文件找不到 | 文件已被移动或删除 |
| 0x80070570 | 文件已损坏 | 重新下载或检查存储介质 |
常见问题
"没有被指定在 windows 上运行 或者它包含错误" 是什么?
这条错误提示本质上是 Windows 的安全检查机制在生效。当你启动一个可执行文件时,系统通过以下三个层次核实其可信度:
- 数字签名验证:检查文件是否带有有效的 Authenticode 签名
- Zone.Identifier 标记:查看文件是从哪里来的(互联网、本地、U盘)
- 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 会以这条错误提示拒绝启动。安装对应的运行库包可以解决相当一部分"疑似损坏"的情况。