Приветствую! Необходимо переписать системную DLL.Имеем Win serv 2019(ad, rdp, 1c, утм, эдо). В системе есть dll winscard, отвечает в частности за определение как подключён сеанс удалённо или консольно на сервере и если сеанс удаленный, система блокирует все локальные ключи, подключенные к серверу. В связи с чем испытываем не удобства с использованием ЭЦП(Рутокен) при подключении по RDP, сервер не видит физически подключённых к нему ключей. Рутокен при этом стоит в сервере, к которому подключаются пара пользователей, но обычно с разных мест. И обоим, не обязательно одновременно нужно пользоваться этим ключем , в основном для принятия накладных в 1с через ЭДО и УТМ ЕГАИС. Забирать рутокен с собой нельзя, в связи с тем, что через него работает УТМ ЕГАИС. Проблема в том, что если сервер видит что подключение по rdp он блокирует в принципе службу локальных смарт для данного сеанса, что не соответствует самой идее рутокена. На сегодняшний день проблема через костыль решена так: с компа с которого нужно зайти с ЭЦП, прикидывается ключик программкой flexihub, и по РДП подключаемся к серверу. Таким образом, сервак думает что ключ подключён к клиенту РДП и пробрасывается нормально. Но постоянные переключения рутокена по сети не очень удобно. Бывают случаи когда подключаемся не с локальной сети а из другого города через VPN в этом случае задержки на запросы занимают заметно продолжительное время(порядка 2-3 минут на каждое обращение к токену, при условии оптоволоконного интернета с обеих сторон). Копирование сертификата на другой носитель не возможно, т.к. сертифкат с не экспортируемой ключевой парой. В интернете на форумах есть обсуждения данной проблемы, где говорится какая функция в dll отвечает за определение удаленный сеанс или консольный. Нужно подправить возвращаемое значение одной функции. Даже выложены подправленные DLL для разных версий windows сервер, но для имеющейся сборки, к сожалению не нашел. http://lifayk.blogspot.com/2012/07/windows-smart-card-subsystem-and-remote.html?m=1