keine Rückmeldung bei RunProgram()

Anfängerfragen zum Programmieren mit PureBasic.
Schlaubi
Beiträge: 16
Registriert: 09.12.2011 16:04

keine Rückmeldung bei RunProgram()

Beitrag von Schlaubi »

Hallo,

ich bin ganz neu bei PureBasic, bin aber sehr begeistert und schreibe momentan ein Tool, welches im Prinzip nur ein Paar externe Programme aufruft und dabei ein eigenes Fenster aktualisiert.

Bei folgendem Code:

Code: Alles auswählen

    SetGadgetText(#Statustext,"Installation ...") ;Statustext ändern
    RunProgram(pfad,"-import " + "-shortcut " + datei,"",#PB_Program_Wait)
hängt das zugehörige Fenster, sein Inhalt wird weiß.
Wie kann ich realisieren, dass das Fenster so bleibt wie es ist, also auch aktualisiert wird.
Hab schon eine Schleife wie folgt versucht, leider jedoch auch ohne Erfolg:

Code: Alles auswählen

program= RunProgram(pfad,"-import " + "-shortcut " + datei,"")
While program
  SetGadgetText(#Statustext,"Installation ...") ;Statustext ändern
wend
Vielen dank für die Hilfe im voraus.
Benutzeravatar
Bisonte
Beiträge: 2468
Registriert: 01.04.2007 20:18

Re: keine Rückmeldung bei RunProgram()

Beitrag von Bisonte »

Da fehlt jede art von Eventverarbeitung.
Es wird also auch nichts aktualisert, was das Fenster angeht.

Wenn der benutzer in der Zeit keine Eingaben machen soll, reicht

Code: Alles auswählen

While WindowEvent() : Wend
innerhalb deiner While Wend Schleife...
PureBasic 6.21 (Windows x86/x64) | Windows11 Pro x64 | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | GeForce RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom​​
Andesdaf
Moderator
Beiträge: 2673
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Re: keine Rückmeldung bei RunProgram()

Beitrag von Andesdaf »

wenn Eingaben im Fenster verarbeitet werden sollen, gibt
es in der Hilfe bei WaitWindowEvent einen Beispielcode.
Win11 x64 | PB 6.20
Schlaubi
Beiträge: 16
Registriert: 09.12.2011 16:04

Re: keine Rückmeldung bei RunProgram()

Beitrag von Schlaubi »

Hey, danke, es klappt.

Schön, dass es dieses Forum hier gibt.
Antworten