Удаление программ из учетных записей пользователей может быть сложной задачей, особенно если у вас нет прямого доступа к их сессиям. Однако есть несколько подходов, которые вы можете рассмотреть, помимо тех, которые вы уже описали. Вот некоторые идеи:
1. **Удаление через инсталлятор программ**: Если программы, которые вы хотите удалить, были установлены через стандартный инсталлятор Windows (например, MSI), вы можете попробовать использовать его для удаления. Если вы знаете путь к инсталлятору, вы можете запустить команду на удаление от имени администратора:
```
msiexec /x {ProductCode} /quiet
```
Вы можете получить ProductCode с помощью команды `Get-WmiObject -Query "SELECT * FROM Win32_Product"`.
2. **Запуск скрипта от имени пользователя**: Используйте `PsExec` или `RunAs` для выполнения скрипта от имени пользователя. Это позволит вам запускать команды от имени конкретного пользователя, например:
```
psexec -u имя_пользователя -p пароль cmd.exe /c "C:\путь\к\скрипту.bat"
```
3. **Использование Sysinternals**: Утилиты Sysinternals (например, PsExec, PsKill) могут помочь вам удалять программы, контролируя процессы.
4. **Использование Group Policy Preferences**: Вы можете попробовать настроить удаление программ через Group Policy Preferences, в которых можно задать параметр удаления программ.
5. **Удаление через PowerShell с использованием `Get-WmiObject`**: Попробуйте следующее, чтобы получить список установленных программ и удалить их с правами пользователя:
```powershell
$appName = "Имя программы"
$app = Get-WmiObject -Query "SELECT * FROM Win32_Product WHERE Name = '$appName'"
$app.Uninstall()
```
6. **Использование WMI**: Если программы поддерживают WMI, вы можете попробовать удалить программы через WMI:
```powershell
Get-WmiObject -Class Win32_Product | Where-Object { $_.Name -eq "Имя программы" } | ForEach-Object { $_.Uninstall() }
```
7. **Использование утилит сторонних производителей**: Рассмотрите возможность использования программ, таких как CCleaner, Revo Uninstaller и других, которые могут помочь в удалении программ и очистке остатков.
8. **Учетные записи администратора**: Если у вас есть доступ к учетным записям администратора, вы можете временно добавить учетные записи пользователей в локальную группу администраторов, выполнить удаление программы и затем вернуть настройки обратно.
9. **Скрипт на уровне OS**: Создайте логон-скрипт, который удаляет программы, и убедитесь, что он выполняется в контексте пользователя с необходимыми правами.
Помните, что любые действия по удалению программ должны быть согласованы с пользователями, и вы должны убедиться, что у вас есть разрешения на выполнение этих действий.