Seite 1 von 1

killprogram

Verfasst: 03.04.2008 20:04
von Ironsmurf
Hallo zusammen
ich möchte ein Programm beenden, das zuvor mit dem Befehl Runprogram geöffnet wurde.
Es handelt sich um ein Mediaplayer

Code: Alles auswählen

RunProgram ("D:\Koolplaya.exe")

Wenn der Player geöffnet wurde, wird er Film auch gestartet, nun ist der Player aktiv, wie kann ich mein Programm wieder aktiv werden lassen, bisher habe ich einmal mit der Maus auf mein Programm geklickt, damit es wieder aktiv ist und Eingaben annimmt.

Wenn ich nun den Mediaplayer aus meiner Software beenden will mit dem Befel Killprogram erhalte ich folgende Fehlermeldung.

"Program is Null(0)!"
Mir fehlt also nur der richtige Parameter, leider verstehe ich nicht ganz den Befehl Killprogram.

Vielen Dank für eure Mühe im voraus

KillProgram (Koolplaya)

Verfasst: 03.04.2008 20:05
von Ironsmurf

Code: Alles auswählen

KillProgram (Koolplaya)

Verfasst: 03.04.2008 20:07
von Kaeru Gaman
Die folgenden Befehle können verwendet werden, wenn ein Programm mit dem #PB_Program_Open Flag ausgeführt wurde:

- IsProgram(): überprüft, ob eine Nummer ein gültiges - mittels RunProgram() ausgeführtes Programm - darstellt.
- ProgramID(): gibt die OS Prozess-ID des Programms zurück.
- ProgramRunning(): überprüft, ob ein Programm noch läuft.
- WaitProgram(): wartet auf das Ende eines Programms.
- KillProgram(): beendet das Programm.
- ProgramExitCode(): ermittelt den Exitcode des Programms.
- CloseProgram(): schließt die Verbindung zum Programm.
Konnte das Programm nicht ausgeführt werden, ist der Rückgabewert gleich null. War RunProgram() erfolgreich, ist der Rückgabewert ungleich null.

Wenn #PB_Program_Open in den übergebenen Flags enthalten war, ist der Rückgabewert eine Nummer, welche das Programm identifiziert. Diese kann beim Aufruf von Befehlen wie ReadProgramString() oder ProgramExitCode() verwendet werden, um Informationen über das Programm zu erhalten. Gleiches bei anderen der oben genannten Befehle analog.

Verfasst: 03.04.2008 20:08
von gnasen
In der Hilfe steht bei RunProgram() folgendes:
Wenn #PB_Program_Open in den übergebenen Flags enthalten war, ist der Rückgabewert eine Nummer, welche das Programm identifiziert.
also musst du das so in etwa machen (keine Ahnung obs passt, noch nie probiert)

pID.l = runprogram(<hier dein zeug>)
killprogram(pID)
closeProgram(pID)


EDIT: Da war wehr schneller und ausführlicher ;)