Gambas-it

Gambas3 => Programmazione => Topic aperto da: vuott - 26 Ottobre 2011, 16:33:59

Titolo: [RISOLTO] Shell "comando" TO variabile...... ma al contrario.
Inserito da: vuott - 26 Ottobre 2011, 16:33:59
Vorrei sottoporvi un'altra mia domanda allucinogena  :rolleyes: (in vero l'avevo già posta in un'altra simile: http://www.gambas-it.org/smf/index.php?topic=1791.0) :

Come inviare una stringa direttamente ad un programma di lettura esterno senza passare da un file di testo ?

Mi spiego:

* presupposti: diciamo che ho una stringa, per esempio: "gambas";

* obiettivo: vorrei far apparire questa stringa/scritta in un semplice lettore di testo (esempio: Kate, Gedit, o altro) però direttamente, ossia senza creare preliminarmente un file di testo;

* prime prove e risultati: ho scritto di getto una cosa di questo genere: Shell "kate " & "gambas". Ho ottenuto l'apertura dell'editor, il quale nella parte superiore della sua cornice ha riportato la scritta "gambas", come se fosse stata il nome di un file. Io invece avrei voluto che fosse stata stampata all'interno dell'area di testo dell'editor.

...suggerimenti ?  :-[
Titolo: Re: Shell "comando" TO variabile...... ma al contrario.
Inserito da: fsurfing - 26 Ottobre 2011, 22:04:24
con gedit non è possibile , guardando il suo "man" non prevede comandi di quel tipo , quindi tramite il solo comando shell non è possibile.
ci puoi però riuscire tramite un processo , di cui ti allego un semplice esempio
Titolo: Re: Shell "comando" TO variabile...... ma al contrario.
Inserito da: milio - 26 Ottobre 2011, 22:21:02
Per Kate invece devi usare il componente DBus per poter passargli del testo

Allego anch'io esempio :)

Titolo: Re: Shell "comando" TO variabile...... ma al contrario.
Inserito da: vuott - 27 Ottobre 2011, 10:46:52
Innanzitutto ringrazio fsurfing e milio per il loro contributo.

per fsurfing
ho scaricato l'applicativo, ed ho proceduto così:
1) clicco sul tasto per l'apertura di Gedit;
2) clicco sul tasto per l'invio del testo;

ma purtroppo la soluzione suggerita non mi funziona...  :-\
C'è qualcosa che mi è sfuggita ?


per milio
ho provato il tuo applicativo per "kate" e funziona. Molto interessante.  :coder:
Puoi spendere qualche riga per spiegare - seppur brevemente - cosa è DBus e a cosa serve ? Grazie.

Titolo: Re: Shell "comando" TO variabile...... ma al contrario.
Inserito da: milio - 27 Ottobre 2011, 11:53:16
Citazione
da Wikipedia:

D-Bus (Desktop Bus) è un sistema di comunicazione tra processi (IPC), sviluppato come progetto di software libero, che offre alle applicazioni un semplice modo di comunicare tra loro.
D-Bus è stato pesantemente influenzato dal sistema DCOP e lo ha sostituito nella versione KDE 4; D-Bus fa parte del progetto Freedesktop.org e Red Hat è il suo sviluppatore principale. È implementato in Qt 4, GNOME e sulla piattaforma Maemo per applicazioni mobili.

Praticamente serve (e tutte le applicazioni di gambas si possono gestire in questo modo) a registrare funzioni e proprieta' in modo che altri programmi, grazie ad un sistema di ricerca compatibile (DBus), riescano ad accedervi e a intercettarne informazioni o scriverne per far cambiare, come nell'esempio, lo stato del programma.


Ps.  :P di mestiere facevo il falegname ora son lavandaio... non sono informatico... quindi leggiti la pagina su wikipedia   :P

;D



Titolo: [RISOLTO] Shell "comando" TO variabile...... ma al contrario.
Inserito da: vuott - 05 Dicembre 2011, 01:11:19
con gedit non è possibile , guardando il suo "man" non prevede comandi di quel tipo , quindi tramite il solo comando shell non è possibile.
ci puoi però riuscire tramite un processo , di cui ti allego un semplice esempio
:ciao:
Allora, ho fatto degli aggiornamenti e ti comunico, fsurfing, che il tuo programmino per scrivere su Gedit ora mi funziona.

Aggiungo soltanto che la tua soluzione funziona sia con il comando:
Codice: [Seleziona]
Print #hProcess, TextBox1.Text

ma anche inserendo:
Codice: [Seleziona]
Write #hProcess, TextBox1.Text

Molto bene: ora posso davvero scrivere Risolto.