Como usar o tscon no Windows7?


12

Preciso executar testes de automação noturnos usando RFT e IE na máquina virtual Windows7. Descobri que reiniciar a caixa do Windows antes do início do teste ajuda.

Estou mudando o ambiente de produção do Windows XP para o Windows 7. A RFT costumava reclamar ao executar 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 tscon.exe 0 /dest:consoleanterior ao início de 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.

Tentei executar os dois, mas nada ajudou.

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

No Windows7, 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, tscon retorna

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

Eu apenas verifiquei que a execução tscon.exe 0 /dest:consoleno Windows XP resolve o problema. Não é possível entender a saída do comando tscon então.

Alguma idéia de como posso executar scripts RFT depois de reiniciar a caixa do Windows automaticamente? De preferência sem envolver nenhum outro computador. Eu estava pensando em usar o antigo Windows XP para fazer uma sessão remota na área de trabalho para deixar a RFT feliz. Espero que exista outra solução melhor para isso.


Criei outra pergunta que pode estar relacionada. serverfault.com/questions/429364/…
— Radek

Além disso, isso parece promissor: msdn.microsoft.com/en-us/library/windows/hardware/gg463353.aspx não tenho certeza do que isso significa para mim.
— Radek

Respostas:


13

Antes de chegar ao seu problema principal, gostaria de destacar 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 no seu sistema. MUI é a interface de 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 o tscon está tentando encontrar 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 naquele computador e não aquele que você copiou de outro computador, certo?

Você pode corrigir esse problema executando sfc /scannowdepois de tirar uma captura instantânea e ver se o tscon dá o mesmo erro.

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

Por exemplo, eu recebo essa saída query userem 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 meu ID de sessão é 2, corro tscon 2 /dest:consolepara enviá-la ao 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

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

Se você tiver êxito com os comandos acima, poderá colocar o seguinte em um arquivo em lotes e executá-lo para enviar sua sessão atual ao 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, que eu suspeito que tenha sido garantir que você sempre tenha o ID de sessão 0.


Muito interessante. Preciso me preparar e investigar mais na segunda-feira. No momento, posso fazer o teste após a reinicialização, se não fizer 'conexão remota' com o Windows7 antes do início do teste. Se eu fizer, não vou trabalhar.
— Radek

Não consegui executar o 'tscon', mas o encontrei no diretório winsxs. Havia também arquivo mui. Copiei os dois para o meu diretório e de lá eu corro tscon ....
— Radek

1
OK, então eu descobri se eu corro a tscon 1 /dest:consolepartir de uma linha de comando como administrador. Agora eu preciso descobrir como executar esse arquivo exe sempre como administrador.
— Radek

Não se esqueça de executar o comando batch ( for /f ...) como administrador. Veja também support.smartbear.com/viewarticle/72794
— bispo

Para aqueles que ainda têm problemas após desativar a proteção de tela, alguns ponteiros aqui superuser.com/questions/51416/…
— binithb 2/15/15

1

Esta página diz que o problema está no bloqueio do sistema ao tentar executá-lo através de tarefas agendadas: http://www-01.ibm.com/support/docview.wss?uid=swg21304791

Configure o sistema para efetuar login automaticamente, desativar o protetor de tela e o bloqueio automático e veja se isso ajuda. Não 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 qualquer método que o software da sua máquina virtual forneça. Na verdade, desative a área de trabalho remota para não bloquear o sistema por acidente.

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

De acordo com o seguinte: http://support.microsoft.com/kb/302801 O Tscon deixaria a sessão desbloqueada no servidor 2003 (e, presumivelmente) xp. Este foi um erro que provavelmente foi corrigido nas versões mais recentes do Windows.


Já configurei o login automático e o protetor de tela desativado. Como desativo o bloqueio automático?
— Radek

Estou lendo a página da Microsoft e realmente não entendo como ela funciona ou deve funcionar. Quando a RFT funcionaria? Se o console estiver bloqueado ou não bloqueado? O que eu costumava fazer com o XP é que eu planejei reiniciar a caixa do XP, então o sistema registrou automaticamente o usuário rft e o usuário executou tscon.exe 0 /dest:consolee, em seguida, iniciou os testes. Esse fluxo não funciona no Windows7.
— Radek

Eu acho que se você alternar para conectar via vnc em vez da área de trabalho remota, funcionará então. Usando desktop remoto irá travar a tela, que breaks rft`
— Grant

A desativação do bloqueio deve ser feita para você, se você desativar a proteção de tela, verifique também se os modos de suspensão e desativação de monitores estão desativados no gerenciamento de energia.
— Grant

Como o uso do vnc resolve esse problema? Se eu executar o RFT logo após a reinicialização e não havia conexão com a área de trabalho remota antes?
— Radek
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.