Программно удалите Антивирус Основ безопасности MSFT из XP и машин Win7

Был сервер, когда-то подключенный к домену, возможно, SQL-сервер имеет старый ВХОД В СИСТЕМУ, который связан с пользователем домена.

  1. В SSMS, подключенном к взгляду SQL Server под Sercurity => Логины и безопасность => Учетные данные для пользователей, которые совпадают с Вашим пользователем домена.
  2. Проверьте Локальных пользователей на машине Windows, чтобы видеть, существует ли Ваше имя пользователя.

Если Вы не можете найти очевидное пользовательское соединение, попытайтесь отключить пользователей по одному, пока Вы больше не можете соединиться с SQL-сервером с помощью аутентификации Windows.

Я видел поведение с переименованными учетными записями пользователей, где они поддерживают свои старые отношения, потому что SID никогда не изменялся, просто имя пользователя.

2
задан 6 April 2011 в 00:14
3 ответа

Это смотрит на меня как, у Вас есть больше чем один продукт, возвращаемый Get-ChildItem "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" | ?{$_.GetValue("DisplayName") -like "Microsoft Security Essentials" } cmdlet и Ваш сценарий это падение, потому что это только ожидает тот.

Попробуйте этот измененный сценарий, какие циклы по каждому возвращенному объекту и выполняет команду удаления для продукта. Я также изменился /s включить msiexec кому: /quiet поскольку это надеется быть совместимым с большим количеством версий Windows.

$UninstallString = Get-ChildItem "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" | ?{$_.GetValue("DisplayName") -like "Microsoft Security Essentials" } | ForEach-Object -Process {$_.GetValue("UninstallString") }

foreach($ThisProduct in $UninstallString)
{
    $UninstallCmd = $ThisProduct.split('/')[0].Trim() 
    $UninstallParam = '/' + $ThisProduct.split('/')[1].Trim()
    $UninstallParamQuiet = "/quiet"

    & $UninstallCmd $UninstallParam $UninstallParamQuiet
}

Отказ от ответственности: Этот ответ появляется после очень большого количества из назад и вперед в чате для определения настоящей проблемы, что больше чем один объект возвращался одной из команд PowerShell.

2
ответ дан 3 December 2019 в 10:18

$UninstallString действительно a string? В противном случае Вы, возможно, должны бросить его, чтобы быть a string. Кроме того, я не думаю, что это null, но можно хотеть проверить, что это содержит то, что Вы думаете, что это делает после того первого шага.

1
ответ дан 3 December 2019 в 10:18
@ECHO OFF

CLS

C:

CD\

CD Program Files\Microsoft Security Client

setup.exe /x /s



EXIT

Это работает над клиентами XP, не протестировали на Win7, но поскольку это - просто сценарий пакетной обработки, это должно быть прекрасным. Обязательный "Настолько легкий $BRAINDEADBIPED мог сделать это!" здесь.

1
ответ дан 3 December 2019 в 10:18

Теги

Похожие вопросы