Работает ли Add-MpPreference с Windows 8.1?

У меня есть сценарий powershell, который добавляет исключения файлов для Защитника Windows на компьютере под управлением Windows 10.

Но я запускаю тот же сценарий с Windows 8.1, но получаю сообщение об ошибке:

Add-MpPreference: команда "Add-MpPreference" была найдена в модуле "Защитник", но модуль не может быть загружен. Для получения дополнительной информации запустите "Защитник модуля импорта". В строке:1 символ:1 + Add-MpPreference -ExclusionPath "C:\Temp" + ~~~~~~~~~~~~~~~~ + CategoryInfo: ObjectNotFound: (Add-MpPreference:String) [], CommandNotFoundException + FullyQualifiedErrorId: CouldNotAutoloadMatchingModule

Что я могу сделать, чтобы он работал с Windows 8/8.1?

3 ответа

Решение

Попробуйте с классом WMI. Я помню, что для защитника существовал класс WMI. Используйте некоторые инструменты WMI для изучения этих классов.

Или вы можете скопировать MSFT_MpWDOScan.cdxml от Windows 10 / 2016 до C:\WindowsPowerShell\v1.0\modules\Defender\

Microsoft сломал модуль Защитник в 2017-04 Ежемесячный накопительный пакет и позже.
Ниже находится C: \ WindowsPowerShell \ v1.0 \ modules \ Defender \ Defender.psd1.

@{
GUID = 'C46BE3DC-30A9-452F-A5FD-4BF9CA87A854'
Author="Microsoft Corporation"
CompanyName="Microsoft Corporation"
Copyright="ゥ Microsoft Corporation. All rights reserved."
ModuleVersion = '1.0'
NestedModules = @( 'MSFT_MpComputerStatus.cdxml',
                   'MSFT_MpPreference.cdxml',
                   'MSFT_MpThreat.cdxml',
                   'MSFT_MpThreatCatalog.cdxml',
                   'MSFT_MpThreatDetection.cdxml',
                   'MSFT_MpScan.cdxml',
                   'MSFT_MpSignature.cdxml',
                   'MSFT_MpWDOScan.cdxml')


AliasesToExport = @()
FunctionsToExport = @( 'Get-MpPreference',
                       'Set-MpPreference',
                       'Add-MpPreference',
                       'Remove-MpPreference',
                       'Get-MpComputerStatus',
                       'Get-MpThreat',
                       'Get-MpThreatCatalog',
                       'Get-MpThreatDetection',
                       'Start-MpScan',
                       'Update-MpSignature',
                       'Remove-MpThreat',
                       'Start-MpWDOScan')

PowerShellVersion = '3.0'
HelpInfoUri="http://go.microsoft.com/fwlink/?linkid=390762"
}

MSFT_MpWDOScan.cdxml и Start-MpWDOScan отсутствует в Windows 8.1.
Удаление их снова работает. (Этот файл защищен TrustedInstaller.)

Другие вопросы по тегам