Как предотвратить остановку службы Hamachi при отключении удаленного рабочего стола в Windows XP?

У меня машина с Windows XP SP2 с работающей службой Hamachi. Обычно я подключаюсь к нему с помощью удаленного рабочего стола, и когда я отключаюсь, я не могу подключиться к нему снова, потому что Hamachi VPN не работает. Как предотвратить остановку сервиса Hamachi?

Я уверен, что Hamachi настроен как автоматический сервис.

7 ответов

Решение

Если Hamachi настроен для работы в качестве службы, то не должно иметь значения, следует ли вам просто отключиться от сеанса RDP или выйти из системы, так как он должен работать в фоновом режиме. Вы должны проверить службы MMC, чтобы убедиться, что служба существует и работает.

Очевидно, что для работы бесплатной версии Hamachi необходим графический интерфейс. Когда вы отключите сеанс RDP, бесплатная версия Hamachi отключится. Обходной путь, кажется, состоит в том, чтобы выполнить следующую команду вместо разъединения. (Примечание: номер 1 ниже - это идентификатор вашей сессии. Чтобы узнать, какой у вас текущий идентификатор сессии, в консоли запустите query user или откройте диспетчер задач и зайдите к пользователям и посмотрите свой идентификатор сессии)

tscon 1 /dest:console

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

Просто добавьте это в скрипт.bat:

tscon 1 /dest:console
rundll32.exe user32.dll, LockWorkStation

Первая строка переносит удаленный сеанс на локальный рабочий стол, а вторая строка блокирует его. Вместо отключения просто запустите скрипт bat.

Если вы закрываете сеанс удаленного рабочего стола без выхода из системы, это не должно быть проблемой. Если вы используете Microsoft RDP-клиент, просто нажмите "X" в верхней панели экрана.

Единственное, о чем я мог подумать, может быть, клиент hamachi настроен на автоматическое отключение, если он простаивает в течение X минут. Я даже не уверен, есть ли у Хамачи такой вариант, я никогда не смотрел.

Когда я перестал закрывать окно через кнопку X и начал отключаться, то проблема больше не возникала.

Пакетный скрипт — грубое решение. Я решил проблему следующим образом. Я вошел в редактор политики> Конференция компьютера> Административные шаблоны> Компоненты Windows> Службы удаленных рабочих столов> Узел удаленных подключений> Подключения> Ограничить пользователей служб удаленных рабочих столов одним сеансом RDP> Отключил правило. После этого вы можете перейти на локальный компьютер (или использовать любое удаленное программное обеспечение, например TeamViewer), войти в систему, используя свои учетные данные> и запустить Hamachi> ЗАБЛОКИРОВАТЬ АККАУНТ , чтобы он оставался в системе. Теперь, если вы войдете в систему с помощью RDP и перейдете в диспетчер задач>Пользователи, вы увидите, что вы оба пользователя вошли в систему. После этого вы можете входить в систему\выходить из системы с помощью RDP столько раз, сколько хотите, он не будет выходить из локального сеанса и таким образом, Hamachi останется включенным.

Я кратко просмотрел действие, которое делает Хамачи. Судя по тому, что я там нашел, служба Hamachi (с именем Hamachi2SVC, запускающая hamachi-2.exe), похоже, активно обнаруживает выходы из Windows и спрашивает свой сервер, что делать; в случае OP сервер приказывает клиенту отключиться.
Чтобы обойти этот механизм, можно исправить программу, чтобы она не проверяла выходы из системы. Для Hamachi версии 2.3.0.78 изменение байта0x10122E 0x85к0x31(инструкцияtestкxor) вC:\Program Files (x86)\LogMeIn Hamachi\x64\hamachi-2.exeработает как положено, хотя насчет других версий не уверен.

Другие вопросы по тегам