citroendsvier
Goto Top

PsExec + cscript.exe - keine Ausgabe

Hallo zusammen,

ich möchte auf meinem per PsExec eingeloggten PC eine MsgBox öffnen. Dazu existiert eine Message.vbs, die den per Argument übergebenen Text als MsgBox ausgibt. Das funktioniert auf dem lokalen PC.

Auf dem PsExec-PC allerdings passiert nichts, die cscript wird nicht zu Ende ausgeführt (Man kann nichts mehr machen, die Befehlszeile ">" erscheint nicht mehr).
Woran liegt das?

MfG, V40

Content-ID: 276175

Url: https://administrator.de/forum/psexec-cscript-exe-keine-ausgabe-276175.html

Ausgedruckt am: 23.12.2024 um 15:12 Uhr

emeriks
Lösung emeriks 01.07.2015, aktualisiert am 05.07.2015 um 12:26:18 Uhr
Goto Top
Hi,
na doch, da passiert schon was. In der Sitzung des Benutzers auf dem Remote-PC wird die MessageBox angezeigt. Nur dass diese Sitzung keinen aktiven Desktop hat.
Selbst wenn da der betreffende Benutzer, mit welchem psexec sich anmeldet, schon am Remote-PC angemeldet ist, wird das ne neue Sitzung mit diesem Benutzer und die Box wird im "Nirvana" angezeigt.
Überprüfen kannst Du das, indem Du - während psexec gestartet ist - auf dem Remote-PC im Taskmanager schaust. Dort solltest Du unter dem betreffenden Konto einen Task "cscript.exe" haben. Wenn Du Dir dort noch die Spalte mit der Sittzungs-Nr einblendest, siehst Du, dass das ne andere Sitzung ist. Wenn Du den Task über den Taskmanager beendest, dann macht auch auf der anderen Seite Psexec weiter und meldet irgendwas wie
cscript.exe exited on XXXXXXXX with error code 1.
Selbst mit dem Parameter -i, der ja seines Zeichens bewirken soll
-i Run the program so that it interacts with the desktop of the specified session on the remote system. If no session is specified the process runs in the console session.
funktioniert das meines Wissens nur dann, wenn der betreffende Benutzer gerade in der Consolensitzung angemeldet ist. Und das ist meines Wissens schon seit Windows Vista schon nicht mehr so.

E.
citroendsvier
citroendsvier 01.07.2015 um 21:53:05 Uhr
Goto Top
Alles klar, du hast Recht. Die Cscript läuft. Aber selbst, wenn ich als "richtiger" Benutzer angemeldet bin, passiert nichts.

Wie kann ich das ändern? Eine VBS oder bat (wobei das halt unschön ist) starten, die dann quasi lokal auf dem remote Rechner die VBS startet, die dann die MsgBox anzeigt (:D) funktioniert leider nicht...

Gibts da eine andere Möglichkeit?
114757
Lösung 114757 01.07.2015, aktualisiert am 05.07.2015 um 12:25:57 Uhr
Goto Top
citroendsvier
citroendsvier 02.07.2015 aktualisiert um 20:42:16 Uhr
Goto Top
Das wäre natürlich eine Möglichkeit. Kannte ich nicht. Ich werde die mal aus einer win-Ultimate VM kopieren und testen. Melde mich dann, danke! face-wink
114757
114757 02.07.2015 um 20:56:08 Uhr
Goto Top
Zitat von @citroendsvier:

Das wäre natürlich eine Möglichkeit. Kannte ich nicht. Ich werde die mal aus einer win-Ultimate VM kopieren und
testen. Melde mich dann, danke! face-wink
Wie kopieren ??? Hast du noch XP ? OMG face-big-smile
citroendsvier
citroendsvier 02.07.2015 um 22:05:06 Uhr
Goto Top
nope, aber Windows Home Premium.

cmd > msg.exe --> gibts nicht.
cmd > net send --> gibts auch nicht.

:/

Ultimate-VM-cmd > msg.exe --> Hier ist die Syntax für...
114757
114757 02.07.2015, aktualisiert am 03.07.2015 um 15:48:12 Uhr
Goto Top
Windows Home Premium
Wasn dat ?? Windows 7 oder Vista ?
msg gibt's seit Vista, und ist im Windows Lieferumfang enthalten.
http://www.pqtuning.de/winvista/tools/nachrichten-senden-msg.html
citroendsvier
citroendsvier 03.07.2015 aktualisiert um 15:06:03 Uhr
Goto Top
Windows 7 HP 64bit, um genau zu sein :D

ich kann dir nur sagen, was ich hier sehe. Und ich sehe, dass cmd > msg.exe nicht funktioniert. In der Win 7 Ultimate 64 bit VM aber schon.
Da ich das mit gemeinsame Zwischenablage zwischen VM und Host noch nicht hinbekommen hab, bin ich aber auch noch nicht weiter :P

In Win8.1 x64 (kein Pro) geht msg auch nicht.
citroendsvier
citroendsvier 03.07.2015 aktualisiert um 17:51:29 Uhr
Goto Top
Alles klar, habe die msg.exe aus einer Win7 Ultimate VM in Win8.1 non-Pro kopiert, funktioniert nicht. Fehlermeldung: Loadstring Failed. Error 15105 (0x00003B01)

Werde das nochmal mit Win7 HP testen. Anscheinend ist die msg.exe nicht die einzige Datei, die dafür zuständig ist (Oder wird die Syntax für eine exe woanders gespeichert?)

HALT - EDIT: Nur die Syntax kann nicht angezeigt werden. Funktionieren tut die exe zumindest lokal.

2.EDIT: Von einem win7 HP Rechner (mit msg.exe von der Ultimate VM) aus kann ich jetzt auf einem win 8.1 Rechner eine MessageBox anzeigen. Allerdings nicht umgekehrt - woran kann das liegen?
114757
Lösung 114757 03.07.2015, aktualisiert am 05.07.2015 um 12:25:39 Uhr
Goto Top
Zitat von @citroendsvier:
2.EDIT: Von einem win7 HP Rechner (mit msg.exe von der Ultimate VM) aus kann ich jetzt auf einem win 8.1 Rechner eine MessageBox
anzeigen. Allerdings nicht umgekehrt - woran kann das liegen?
Das geht nur bei Zielmaschinen die den TerminalServices(RDP) unterstützen ( und das machen nur die Versionen Pro/Business/Enterprise/Ultimate) und bei denen die TerminalServices(RPC) aktiviert sind. Es gibt allerdings inoffizielle nicht supportete Wege um das einem Home(Premium) einzupflanzen.

Der für MSG.exe nötige Eintrag in der Registry lautet (elevated cmd nutzen):
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v AllowRemoteRPC /t REG_DWORD /d 1 /f

Alle Voraussetungen für ein erfolgreiches msg findest du hier:
http://superuser.com/questions/269880/how-can-i-install-msg-exe

Oder man ruft msg.exe direkt über Powershell auf dem Remote-Host auf (dazu muss in der Firewall die WMI-Remoteverwaltungsausnahme aktiviert sein, und die Powershell mit einem Account der genügend Rechte auf dem Remote-Host hat):
([wmiclass]'\\192.168.1.22\root\cimv2:Win32_Process').Create('msg.exe * Testnachricht')  

Btw. tuts auch ein psexec in folgender und Weise:
psexec \\REMOTE-IP msg * Testnachricht
Alles erfolgreich getestet.
citroendsvier
citroendsvier 05.07.2015 um 12:03:32 Uhr
Goto Top
Okay, den link werde ich mir mal ansehen und evtl meine Rechner modifizieren :P.
Das mit psexec wird aber wahrscheinlich das einfachste sein...

Danke für deine Hilfe!