Как использовать tscon на Windows7?

12

Мне нужно запустить автоматическое тестирование с использованием RFT и IE на виртуальной машине Windows7. Я обнаружил, что перезапуск Windows до начала тестирования помогает.

Я перемещаю производственную среду с Windows XP на Windows 7. RFT раньше жаловался, когда запускал сценарии RFT, которые CRFCN0557E: Activation failed when running under a Terminal Services environment. This may be caused by using a minimized terminal window - try playing back without minimizing the terminal window (it does not need to be full-screen).

Запуск tscon.exe 0 /dest:consoleдо запуска любого сценария RFT исправляет ошибку в Windows XP. Но не на Windows7.

Я провел какое-то исследование и часами пытался это исправить, но ничего не помогало. В Windows7 не включена заставка.

Я пытался запустить оба, но ничего не помогло.

tscon.exe 0 /dest:console
tscon.exe 1 /dest:console

На виндовс цкон возвращается

{ErrorPrintf(): LoadString failed, Error 15105, (0x00003B01)}
Error [15105]:The resource loader cache doesn't have loaded MUI entry.
Error [0]:The operation completed successfully.

На Windows XP tscon возвращает

Could not connect sessionID 0 to sessionname console, Error code 7045
Error [7045]:The requested session access is denied.

Я просто дважды проверил, что запуск tscon.exe 0 /dest:consoleв Windows XP решает проблему. Тогда не могу понять вывод команды tscon.

Любая идея, как я могу запустить сценарии RFT после того, как я автоматически перезагружаю Windows? Желательно без участия какого-либо другого компьютера. Я даже думал использовать старую Windows XP, чтобы сделать сеанс удаленного рабочего стола счастливым. Я надеюсь, что есть другое лучшее решение для этого.

Радек
источник
Я создал еще один вопрос, который может быть связан. serverfault.com/questions/429364/…
Радек
Кроме того, это выглядит многообещающим msdn.microsoft.com/en-us/library/windows/hardware/gg463353.aspx, не уверен, что это значит для меня.
Радек

Ответы:

13

Прежде чем перейти к вашей основной проблеме, я хотел бы отметить, что тот факт, что вы получаете сообщение

{ErrorPrintf(): LoadString failed, Error 15105, (0x00003B01)}
Error [15105]:The resource loader cache doesn't have loaded MUI entry.

является признаком того, что что-то повреждено в вашей системе. MUI - это многоязычный пользовательский интерфейс. Установлен ли рассматриваемый компьютер под управлением Windows 7 на язык, отличный от «английский (США)»? Похоже, что tscon пытается найти и отобразить сообщение об ошибке на настроенном вами языке, но не может найти языковой файл, который должен использовать. Это может быть признаком более серьезной проблемы. Вы используете tscon.exe, который был установлен на этом компьютере, а не тот, который вы скопировали с другого компьютера, верно?

Вы можете исправить эту проблему, запустив sfc /scannowпосле создания снимка и посмотрев, выдает ли tscon ту же ошибку.

Что касается вашей основной проблемы, номер, который вы указываете в tscon, указывает на какой идентификатор сеанса действовать. Вы проверили, используете ли вы сеанс 0 или 1? Запустите, query userчтобы увидеть ваш идентификатор сессии, а затем используйте этот номер.

Например, я получаю этот вывод с query userодного из моих серверов:

 USERNAME              SESSIONNAME        ID  STATE   IDLE TIME  LOGON TIME
>starfish              rdp-tcp#4           2  Active          .  9/20/2012 10:12 PM

Поскольку мой идентификатор сеанса равен 2, я запускаю его tscon 2 /dest:consoleдля отправки на консоль. Когда я иду к консоли и запускаю, query userя вижу следующее:

 USERNAME              SESSIONNAME        ID  STATE   IDLE TIME  LOGON TIME
>starfish              console             2  Active          .  9/20/2012 10:12 PM

Я также проверил это на рабочем столе Windows 7 Pro с теми же результатами.

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

for /f "skip=1 tokens=3 usebackq" %%s in (
  `query user %username%`
) do (
  %windir%\System32\tscon.exe %%s /dest:console
)

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

морская звезда
источник
Очень интересно. Мне нужно готовиться и расследовать больше в понедельник. Прямо сейчас я могу выполнить тестирование после перезагрузки, если я не выполняю «удаленное подключение» к Windows7 до начала тестирования. Если я это сделаю, я не буду работать.
Радек
Я не смог запустить 'tscon', но потом нашел его в каталоге winsxs. Был также файл mui. Я скопировал их обоих в свой каталог, и оттуда я запускаю tscon ....
Radek
1
Итак, я узнал, запускаю ли я tscon 1 /dest:consoleиз командной строки от имени администратора, это работает. Теперь мне нужно выяснить, как запускать этот исполняемый файл всегда как администратор.
Радек
Не забудьте запустить пакетную команду ( for /f ...) от имени администратора. Смотрите также support.smartbear.com/viewarticle/72794
епископ
Для тех, у кого все еще есть проблемы после отключения заставки, несколько указателей здесь superuser.com/questions/51416/…
binithb
1

На этой странице сказано, что проблема в том, что система заблокирована при попытке запустить ее с помощью запланированных задач: http://www-01.ibm.com/support/docview.wss?uid=swg21304791

Настройте систему на автоматический вход в систему, отключите экранную заставку и автоматическую блокировку и посмотрите, поможет ли это. Не подключайтесь к машине через удаленный рабочий стол - это заблокирует сеанс консоли. Вместо этого установите vnc для входа или используйте любой метод, который предоставляет программное обеспечение вашей виртуальной машины. Фактически отключите удаленный рабочий стол, чтобы случайно не заблокировать систему.

Чтобы настроить автологин, запустите «control userpasswords2»

В соответствии с этим: http://support.microsoft.com/kb/302801 Tscon фактически оставит сеанс разблокированным на сервере 2003 (и, предположительно) XP. Эта ошибка, вероятно, была исправлена ​​в более новых версиях Windows.

Грант
источник
Я уже настроил автоматический вход в систему и отключил заставку. Как отключить автоматическую блокировку?
Радек
Я читаю страницу MS, и я действительно не понимаю, как это работает или должно работать. Когда будет работать RFT? Если консоль заблокирована или не заблокирована? Что я делал с XP, так это то, что я запланировал перезапустить XP, после чего система автоматически зарегистрировала пользователя rft, и пользователь запустил, tscon.exe 0 /dest:consoleа затем запустил тесты. Этот поток не работает на Windows7.
Радек
Я думаю, что если вы просто переключитесь на подключение через vnc вместо удаленного рабочего стола, это будет работать тогда. Использование удаленного рабочего стола заблокирует экран, который нарушает rft`
Грант
Отключение блокировки должно быть выполнено за вас, если вы отключите заставку, а также убедитесь, что спящие и отключенные мониторы отключены в управлении питанием.
Грант
Как с помощью VNC решить эту проблему? Если я запускаю RFT сразу после перезагрузки, и до этого не было подключения к удаленному рабочему столу?
Радек