Uso del Metodo .RunExec()

Da Gambas-it.org - Wikipedia.

Il Metodo ".RunExec()" della Classe DesktopFile consente di aprire un file con un programma appositamente scelto dall'utente, anche diverso da quello predefinito nel sistema per l'apertura di quel tipo di file.

E' necessario preliminarmente attivare il Componente gb.desktop.

Vediamo di seguito un semplice esempio:

Private proc As Process


Public Sub Button1_Click()

 proc = DesktopFile.RunExec("nome_del_programma", "/percorso/del/file/da/aprire", False)

End

Se il terzo argomento è posto a "True", allora il programma Gambas richiederà l'inserimento della password dell'utente.

E' necessario sottolineare che chiudendo il programma Gambas (ad esempio con la seguente sub-routine):

Public Sub Form_Close()

 Quit
 
End

si avrà automaticamente anche la chiusura del programma richiamato nel primo argomento per l'apertura del file indicato nel secondo. Ciò avviene, perché il Metodo ".RunExec()" continua a gestire il processo del programma esterno, scelto nel primo argomento, anche dopo la sua apertura.

In effetti, va aggiunto che questo Metodo restituisce una variabile di tipo Process che consente anche a livello di codice - eventualmente - la gestione del processo del programma scelto.
Ad esempio usando il Metodo ".Kill()" della Classe Process verrà chiuso non solo il programma richiamato, ma anche il programma Gambas:

Public Sub Button2_Click()

 proc.Kill

End