Такая же проблема.
Похоже Win Server 2019 не умеет запоминать поставленными по умолчнию расшаренные удаленные принтеры. Хотя с сетевыми у него проблем нет, т.к. он их видит как локальные.
Думал поможет старое доброе подключение через создание LocalPort. Но у меня принтер так не печатает, выдает ошибку при печати. "Ошибка 87. Неверный параметр."
В общем костылями сделал то, что нужно:
1. В планировщике делаем задачу на экспорт ключа реестра с настройками принтера по умолчанию. Сделано так, чтобы не дергались тригеры смены принтера по умолчнию.
reg export "HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows" %USERPROFILE%\defprinter.reg /y
Фильтр событий ручной. Тут я цепляюсь к событию журнала смены принтера по умолчанию. Смена принтера при отключении от сеанса происходит так, как будто ранее ны было выбрано принтеров по умолчанию. За это я и зацепился. OldDefaultPrinter становится равным прочерку, поэтому его исключим, а остальные смены принтеров будем ловить.
<QueryList>
<Query Id="0" Path="Microsoft-Windows-PrintService/Admin">
<Select Path="Microsoft-Windows-PrintService/Admin">*[System[(Level=4 or Level=0) and (EventID=823)] ]
</Select>
<Suppress Path="Microsoft-Windows-PrintService/Admin">
*[UserData[ChangingDefaultPrinter[(OldDefaultPrinter='-')]]]
</Suppress>
</Query>
</QueryList>
Теперь при смене принтера в домашней папке пользователя лежит reg файл с текущим принтером по умолчанию.
2. Создаем второю задачу в планировщике для импорта этого файла в реестр при подключении и переподключении пользователя
reg import %USERPROFILE%\defprinter.reg
Тригеры 2 штуки. Это событие логина пользователя и событие переподключения к сеансу.
Журнал
Microsoft-Windows-TerminalServices-LocalSessionManager/Operational
События 21 и 25
Задачи в планировщике от имени группы Пользователи