Wie benutze ich tscon unter Windows7?

12

Ich muss über Nacht Automatisierungstests mit RFT und IE auf einer virtuellen Windows7-Maschine durchführen. Ich fand, dass ein Neustart der Windows-Box vor dem Test hilft.

Ich verschiebe die Produktionsumgebung von Windows XP auf Windows 7. RFT beschwerte sich beim Ausführen von RFT-Skripten darüber 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).

Das Ausführen tscon.exe 0 /dest:consoleeines RFT-Skripts vor dem Starten behebt den Fehler unter Windows XP. Aber nicht unter Windows7.

Ich recherchierte und versuchte stundenlang, das zu beheben, aber nichts half. Unter Windows 7 ist kein Bildschirmschoner aktiviert.

Ich habe versucht, beide auszuführen, aber nichts hat geholfen.

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

Unter Windows7 kehrt tscon zurück

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

Unter Windows XP kehrt tscon zurück

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

Ich habe nur zweimal überprüft, ob tscon.exe 0 /dest:consoledas Problem mit Windows XP behoben ist. Kann die Ausgabe des Befehls tscon dann nicht verstehen.

Hast du eine Idee, wie ich RFT-Skripte ausführen kann, nachdem ich die Windows-Box automatisch neu gestartet habe? Am besten ohne einen anderen Computer mit einzubeziehen. Ich dachte sogar daran, mit dem alten Windows XP eine Remotedesktopsitzung zu erstellen, um RFT glücklich zu machen. Ich hoffe, dass es eine andere bessere Lösung dafür gibt.

Radek
quelle
Ich habe eine andere Frage erstellt, die in Zusammenhang stehen könnte. serverfault.com/questions/429364/…
Radek
Auch das sieht vielversprechend aus msdn.microsoft.com/en-us/library/windows/hardware/gg463353.aspx nicht sicher, was es für mich bedeutet.
Radek

Antworten:

13

Bevor ich zu Ihrem Hauptthema komme, möchte ich darauf hinweisen, dass Sie die Nachricht erhalten

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

ist ein Hinweis darauf, dass auf Ihrem System etwas beschädigt wurde. MUI ist die mehrsprachige Benutzeroberfläche. Ist auf dem fraglichen Windows 7-Computer eine andere Sprache als "Englisch (USA)" eingestellt? Es sieht so aus, als würde tscon versuchen, eine Fehlermeldung in Ihrer konfigurierten Sprache zu finden und anzuzeigen, aber es kann die zu verwendende Sprachdatei nicht finden. Dies kann ein Symptom für ein größeres Problem sein. Sie verwenden tscon.exe, das auf diesem Computer installiert wurde, und nicht eines, das Sie von einem anderen Computer kopiert haben, richtig?

Möglicherweise können Sie dieses Problem beheben, indem Sie sfc /scannownach dem Erstellen eines Snapshots ausführen und feststellen, ob tscon denselben Fehler ausgibt.

In Bezug auf Ihr primäres Problem gibt die Nummer, die Sie an tscon senden, an, auf welche Sitzungs-ID Sie reagieren müssen. Haben Sie überprüft, ob Sie Sitzung 0 oder 1 verwenden? Führen query userSie den Befehl aus, um Ihre Sitzungs-ID zu ermitteln, und verwenden Sie diese Nummer.

Ich erhalte diese Ausgabe beispielsweise von query usereinem meiner Server:

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

Da meine Sitzungs-ID 2 ist, werde ich ausgeführt tscon 2 /dest:console, um diese Sitzung an die Konsole zu senden. Wenn ich zur Konsole gehe und starte, query usersehe ich Folgendes:

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

Ich habe dies auch auf einem Windows 7 Pro-Desktop mit den gleichen Ergebnissen getestet.

Wenn Sie mit den obigen Befehlen erfolgreich sind, können Sie Folgendes in eine Batch-Datei einfügen und ausführen, um Ihre aktuelle Sitzung an die Konsole zu senden.

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

Es sollte auch unnötig sein, den Computer neu zu starten. Ich vermute, Sie sollten immer die Sitzungs-ID 0 haben.

Seestern
quelle
Sehr interessant. Ich muss am Montag mehr vorbereiten und untersuchen. Im Moment kann ich den Test nach dem Neustart durchführen, wenn ich vor Beginn des Tests keine Remote-Verbindung zu Windows 7 herstelle. Wenn ich das tue, werde ich nicht arbeiten.
Radek
Ich konnte 'tscon' nicht ausführen, fand es aber im Verzeichnis winsxs. Es gab auch Mui-Datei. Ich habe beide in mein Verzeichnis kopiert und von dort aus tscon ausgeführt ....
Radek
1
OK, also habe ich herausgefunden, ob tscon 1 /dest:consolees funktioniert , wenn ich als Administrator von einer Befehlszeile aus starte. Jetzt muss ich herausfinden, wie ich diese exe-Datei immer als Administrator ausführen kann.
Radek
Vergessen Sie nicht, den Batch-Befehl ( for /f ...) als Administrator auszuführen . Siehe auch support.smartbear.com/viewicle/72794
bishop
Für diejenigen , die immer noch Probleme nach dem Deaktivieren Bildschirmschoner haben, hier einige Hinweise superuser.com/questions/51416/...
binithb
1

Diese Seite besagt, dass das Problem mit dem System besteht, das gesperrt ist, wenn versucht wird, es über geplante Aufgaben auszuführen: http://www-01.ibm.com/support/docview.wss?uid=swg21304791

Richten Sie das System so ein, dass es sich automatisch anmeldet, den Bildschirmschoner und die automatische Sperre deaktiviert und überprüft, ob dies hilfreich ist. Stellen Sie keine Verbindung zum Computer über den Remotedesktop her. Dadurch wird die Konsolensitzung gesperrt. Installieren Sie stattdessen vnc, um sich anzumelden, oder verwenden Sie die von Ihrer Virtual Machine-Software bereitgestellte Methode. Deaktivieren Sie in der Tat den Remotedesktop, damit Sie das System nicht versehentlich sperren können.

Um die automatische Anmeldung einzurichten, führen Sie "control userpasswords2" aus.

Demnach: http://support.microsoft.com/kb/302801 Tscon würde die Sitzung in Server 2003 (und vermutlich) XP tatsächlich entsperrt lassen. Dies war ein Fehler, der wahrscheinlich in neueren Windows-Versionen behoben wurde.

Gewähren
quelle
Ich habe bereits die automatische Anmeldung und den deaktivierten Bildschirmschoner eingerichtet. Wie deaktiviere ich die automatische Sperre?
Radek
Ich lese die MS-Seite und verstehe wirklich nicht, wie es funktioniert oder funktionieren soll. Wann würde RFT funktionieren? Ist die Konsole gesperrt oder nicht gesperrt? Was ich mit XP gemacht habe, ist, dass ich geplant habe, die XP-Box neu zu starten, dann hat das System den rft-Benutzer automatisch angemeldet und der Benutzer lief tscon.exe 0 /dest:consoleund hat dann die Tests gestartet. Dieser Fluss funktioniert nicht unter Windows7.
Radek
Ich denke, wenn Sie nur die Verbindung über VNC anstelle von Remote-Desktop wechseln, wird es dann funktionieren. Mit Remote - Desktop wird auf den Bildschirm sperren, die Pausen rft`
Grants
Das Deaktivieren der Sperre sollte für Sie erfolgen, wenn Sie den Bildschirmschoner deaktivieren. Vergewissern Sie sich auch, dass das Energiesparen und Ausschalten von Monitoren in der Energieverwaltung deaktiviert ist.
Grant
Wie kann vnc dieses Problem lösen? Wenn ich RFT direkt nach dem Neustart starte und vorher keine Remotedesktopverbindung bestand?
Radek