Como usar o tscon no Windows7?

12

Eu preciso executar o teste de automação durante a noite usando RFT e IE na máquina virtual Windows7. Descobri que reiniciar a caixa do Windows antes de o teste começar ajuda.

Estou movendo o ambiente de produção do Windows XP para o Windows 7. O RFT costumava reclamar quando executando scripts RFT que 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).

A execução de tscon.exe 0 /dest:console antes de iniciar qualquer script RFT corrige o erro no Windows XP. Mas não no Windows7.

Eu fiz algumas pesquisas e estava tentando por horas consertar isso, mas nada ajudou. Não há proteção de tela ativada no Windows7.

Eu tentei executar os dois, mas nada ajudou.

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

No Windows7, o tscon retorna

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

No Windows XP, o tscon retorna

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

Acabei de verificar que a execução de tscon.exe 0 /dest:console no Windows XP resolve o problema. Não é possível entender a saída do comando tscon.

Alguma ideia de como posso executar scripts RFT depois de reiniciar a caixa do Windows automaticamente? De preferência sem envolver qualquer outro computador. Eu estava pensando em usar o antigo Windows XP para fazer sessões de desktop remotas para deixar o RFT feliz. Espero que haja outra solução melhor para isso.

    
por Radek 17.09.2012 / 04:15

2 respostas

13

Antes de eu chegar ao seu problema principal, eu gostaria de salientar que o fato de você estar recebendo a mensagem

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

é uma indicação de que algo foi corrompido em seu sistema. MUI é a interface do usuário multilíngue. O computador com Windows 7 em questão está configurado para usar um idioma diferente de "Inglês (Estados Unidos)"? Parece que a tscon está tentando localizar e exibir uma mensagem de erro no idioma configurado, mas não consegue encontrar o arquivo de idioma que deve usar. Isso pode ser um sintoma de um problema maior. Você está usando o tscon.exe que foi instalado nesse computador e não um que você copiou de outro computador, certo?

Você pode corrigir esse problema executando sfc /scannow depois de tirar um instantâneo e ver se o tscon apresenta o mesmo erro.

Quanto ao seu problema principal, o número que você está fornecendo para o tscon indica em qual ID de sessão atuar. Você já verificou se está usando a sessão 0 ou 1? Execute query user para ver qual é o seu ID de sessão e, em seguida, use esse número.

Por exemplo, recebo essa saída de query user em um dos meus servidores:

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

Como o ID da minha sessão é 2, executo tscon 2 /dest:console para enviar essa sessão para o console. Quando vou ao console e executo query user , vejo o seguinte:

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

Eu também testei isso em uma área de trabalho do Windows 7 Pro com os mesmos resultados.

Se você tiver sucesso com os comandos acima, poderá colocar o seguinte em um arquivo de lote e executá-lo para enviar sua sessão atual para o console.

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

Ele também deve eliminar a necessidade de reiniciar o computador, o que eu suspeito que é ter certeza de que você sempre obteve o ID 0 da sessão.

    
por 21.09.2012 / 08:07
1

Esta página diz que o problema é com o sistema sendo bloqueado ao tentar executá-lo através de tarefas agendadas: link

Configure o sistema para efetuar login automaticamente, desative a proteção de tela e o bloqueio automático e veja se isso ajuda. Não se conecte à máquina através da área de trabalho remota - isso bloqueará a sessão do console. Instale o vnc para efetuar login ou use o método fornecido pelo software da máquina virtual. Na verdade, desligue a área de trabalho remota para não bloquear o sistema por acidente.

Para configurar o login automático, execute "control userpasswords2"

De acordo com isto: link Tscon realmente deixaria a sessão desbloqueada no servidor 2003 (e, presumivelmente) xp. Este foi um bug que provavelmente foi corrigido em versões mais recentes do Windows.

    
por 21.09.2012 / 03:57