我正在使用 Visual Studio 2019 编译 C++ 代码。代码范围从简单项目到学习 C++ 功能再到游戏开发。但无论项目的范围如何,我都会收到以下信息:
需要安全扫描 您的管理员需要对该项目进行安全扫描。扫描最多可能需要 10 秒。
这会使 Visual C++ 编译器停止工作并最终减慢我的工作流程。每次我尝试编译我的代码时都会发生这种情况。奇怪的是,在同一台机器上我一直在编译没有这个问题的代码。我不确定是什么导致了这种变化,我想恢复它但不知道如何。
我正在使用 Visual Studio 2019 编译 C++ 代码。代码范围从简单项目到学习 C++ 功能再到游戏开发。但无论项目的范围如何,我都会收到以下信息:
需要安全扫描 您的管理员需要对该项目进行安全扫描。扫描最多可能需要 10 秒。
这会使 Visual C++ 编译器停止工作并最终减慢我的工作流程。每次我尝试编译我的代码时都会发生这种情况。奇怪的是,在同一台机器上我一直在编译没有这个问题的代码。我不确定是什么导致了这种变化,我想恢复它但不知道如何。
这里的问题是由于 Windows Defender 实时保护而发生的,这对于保持系统安全非常重要。我找到的解决方案是基于这些文章:
排除 Visual Studio 2019 的所有必要目录和进程的 Powershell 脚本
解决方案是将 Windows Defender 排除添加到您用于开发环境的所有进程和目录中,这会变得相当复杂,并且取决于您选择的开发环境,这里我使用的是 Visual Studio 2019 并将使用用于快速添加这些排除项的 Powershell 脚本。
只需下载 Powershell 脚本,打开 Windows Powershell,然后键入
Set-ExecutionPolicy Unrestricted
然后导航到脚本的目录。为简单起见,将脚本放在根目录 C: 中并导航到那里,然后键入./{Script name}
“./”对于从非默认目录运行脚本很重要。
该脚本将询问您存储项目文件夹的位置,这对于从 Windows Defender 中排除非常重要。运行脚本后,您就大功告成了。
最后一步,Set-ExecutionPolicy Restricted
然后Get-ExecutionPolicy
验证它是否受到限制,不要忽视您的 Powershell 执行策略非常重要,因为它是一个非常强大的攻击媒介。
我已经完成了这些确切的步骤,并且可以验证 Windows Defender 不再停止使用 Visual Studio 2019 构建我的代码。这可能意味着运行具有不同目录结构的旧版或新版 Visual Studio 将需要另一个脚本,或者 Microsoft 可以采取步骤并创建一个通用解决方案,以从 Windows Defender 扫描中排除他们自己的开发环境。
去
Start > Settings > Update & Security > Windows Security > Virus & threat protection
在病毒和威胁防护设置下,选择管理设置,然后在排除项下,选择添加或删除排除项。选择添加排除项,然后.cpp
从文件、文件夹、文件类型或进程中选择文件类型。