PDA

View Full Version : Runrmtcmd funktioniert nicht



Jenne
23-10-08, 07:33
Hallo Kollegen,

versuche gerade über RUNRMTCMD auf einen anderen PC ein Programm zu starten. Auf dem anderen PC ist CA installiert und der Dienst gestartet. Wenn ich jetzt den Befehl RUNRMTCMD starte, ist meine 5250 Session blockiert (System) und auf dem fernen PC ist zwar die CMD.EXE und das von mir gestartete Programm im Task-Manager zu sehen, aber auf der Windowsoberfläche passiert nichts. Beendet man jetzt auf den fernen PC einen von den beiden Prozessen, dann ist auch meine 5250 SItzung wieder freigegeben. Und ich erhalte eine Spoolfile mit folgenden Inhalt : "Der ferne Befehl hat keine Ausgabe erzeugt."
Hat vielleicht einer eine Idee was bei mir falsch ist.

Gruß
Jenne

Fuerchau
23-10-08, 07:47
RUNRMTCMD startet auf dem PC normalerweise einen Batch-Befehl, der keine Verbindung zum Desktop hat (Hintergrundtask).
Ansonsten kann über WAITTIME die max. Wartezeit auf Antwort (Default *NOMAX) eingestellt werden.

Möchtest du einen PC-Dialogbefehl absetzen, geht das nur per STRPCO und STRPCCMD.

Jenne
23-10-08, 08:00
Hallo Fuerchau,

danke für die schnelle Antwort. Wie kann ich denn einen Dialogbefehl auf einen fernen PC mit STRPCCMD absetzen. Wenn ich den Befehl benutze, wird nur auf meinem PC das Programm gestartet.

Gruß
Jenne

Fuerchau
23-10-08, 08:15
Ist das denn nicht das was du erreichen willst ?
Per RUNRMTCMD kann ich Batchprozesse auf anderen Computern (PC's, Unix, AS/400) starten um Aktionen auszuführen.
STRPCCMD (mit einmaligenm Start von STRPCO beim Sitzungsbeginn) dient zum Ausführen von PC-Befehlen, die über die 5250-Sitzung gestartet werden.
Häufig wird dies zum Anzeigen von Dokumenten (PDF/WORD/o.ä.) verwendet.

Was willst du denn genau tun ?

Jenne
23-10-08, 10:10
Bei unserem Tagesstart soll von der ISeries automatisch ein Programm, kein Prozess, für die Lagerverwaltung gestartet werden, das sich auf deren PC befindet.

BenderD
23-10-08, 10:59
runrmtcmd startet auf dem remote system einen Prozess und wartet auf dessen Beendigung und Rückgabe, was er ja brav tut, wie du beschreibst.
Wenn du auf der Windoof Büchse per runrmtcmd start aufrufst und dein Programm als Parameter mitgibt, sollte das besser gehen, vielleicht kriegst du mit der option /MAX das Fenster sogar dazu im Vordergrund zu sein, ist aber eine Windoof Frage.
Batch files - The START command: Windows NT 4/Windows 2000 Syntax (http://www.robvanderwoude.com/ntstart.html)

D*B


Hallo Kollegen,

versuche gerade über RUNRMTCMD auf einen anderen PC ein Programm zu starten. Auf dem anderen PC ist CA installiert und der Dienst gestartet. Wenn ich jetzt den Befehl RUNRMTCMD starte, ist meine 5250 Session blockiert (System) und auf dem fernen PC ist zwar die CMD.EXE und das von mir gestartete Programm im Task-Manager zu sehen, aber auf der Windowsoberfläche passiert nichts. Beendet man jetzt auf den fernen PC einen von den beiden Prozessen, dann ist auch meine 5250 SItzung wieder freigegeben. Und ich erhalte eine Spoolfile mit folgenden Inhalt : "Der ferne Befehl hat keine Ausgabe erzeugt."
Hat vielleicht einer eine Idee was bei mir falsch ist.

Gruß
Jenne

Jenne
23-10-08, 11:46
Hallo BenderD,

habe den Befehl "START /MAX IEXPLORE.EXE" übergeben. Leider wird IEXPLORE.EXE immernoch als Prozess und nicht als Fenster gestartet.

BenderD
23-10-08, 12:04
was soll ich darunter verstehen? dass der Internet explorer nicht aktives Fenster ist, sondern durch einen Klick in der Taskleiste nach vorne geholt werden muss, oder was sonst?
das ließe sich eventuell mit -k lösen
Microsoft Corporation (http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/ierk/appxc_c.mspx?mfr=true)

D*B


Hallo BenderD,

habe den Befehl "START /MAX IEXPLORE.EXE" übergeben. Leider wird IEXPLORE.EXE immernoch als Prozess und nicht als Fenster gestartet.

Fuerchau
23-10-08, 12:26
Hierzu muss man folgendes verstehen:
Der Rexec-Server läuft als Dienst im Windows.
Ein ferner PC meldet sich an, startet eine Prozedur und wartet ggf. auf das Ergebnis.

Der User, der vor dem PC sitzt, bekommt von alledem nichts mit.
Insbesonders dann, wenn die Anmeldung für den Desktop ja eine ganz andere sein kann, als die für den Rexec-Befehl.

Ggf. funktioniert es dann, wenn der User sich abmeldet und sich unter der selben Anmeldung wie für den Rexec-Call wieder anmeldet (unter XP ggf. schnelle User-Umschaltung).

Solange sich die lokale Anmeldung und die ferne Anmeldung unterscheiden, wird nie was auf den Desktop hochkommen.