Офф. ответ от MS - никак, используйте prof-редакции.
Набросал скрипт, который создаёт задание в планировщике и добавляет маркировку, при старте системы:
Скрипт
Write-Host "Введите имя пользователя для задачи в планировщике:"
$UserName = Read-Host
Write-Host "Введите пароль пользователя для задачи в планировщике:"
$UserPassword = Read-Host
function CreateUser
{
$SecUserPassword = ConvertTo-SecureString($UserPassword) -AsPlainText -Force
New-LocalUser -Name $UserName -Password $SecUserPassword -PasswordNeverExpires
Add-LocalGroupMember -Group "Администраторы" -Member $UserName
}
function CreateScheduledJob
{
Write-Host "Введите имя задания (не используйте пробелы):"
$JobName = Read-Host
Write-Host "Введите имя процесса, трафик которого нужно маркировать (так, как он отображается в диспетчере задач, например, skype.exe):"
$AppPathName = Read-Host
Write-Host "Введите значение метки DSСP (0-63):"
$DSCPAction = Read-Host
$Trigger = New-ScheduledTaskTrigger -AtStartup
$Command = "New-NetQosPolicy -name $AppPathName -NetworkProfile all -DSCPAction $DSCPAction -AppPathName $AppPathName -IPProtocol Both -PolicyStore ActiveStore"
$Argument = "-command `"$Command`""
$Action = New-ScheduledTaskAction -Execute "powershell.exe" -Argument $Argument
Register-ScheduledTask -TaskName $JobName -Trigger $Trigger -User $UserName -Password $UserPassword -Action $Action -RunLevel Highest -Force
}
do
{
Write-Host "Создать пользователя (Y/N)?"
$CreateUserYesNo = Read-Host
} until (($CreateUserYesNo -eq "y") -or ($CreateUserYesNo -eq "n"))
if($CreateUserYesNo -eq "y")
{
CreateUser
}
CreateScheduledJob