Una variabile comune per 2 applicazioni

di il
7 risposte

Una variabile comune per 2 applicazioni

Salute a tutti, sono nuovo del forum e non faccio programmi di professione.
Ho la necessità di accedere (lettura e modifica) a variabili da 2 programmi che gestiscono VBA, in pratica per fare "dialogare" tra loro i programmi volevo vedere se potevo usare un metodo semplice: ogni applicazione verifica lo stato di una variabile e se questa è stata modificata allora esegue delle operazioni e modifica una altra variabile che sarà vista a sua volta dall'altro programma.
Ho visto che in Windows XP (risorse computer > avanzate > variabili ambiente) posso creare nuove variabili.
Il 1° programma mi vede le variabili e modifica, tutto OK
Invece in VBA4 non so che comandi usare, ho provato a guardare in MSDN ma è complicato per me, se qualcuno è così gentile da darmi suggerimenti.
Grazie, mille

7 Risposte

  • Re: Una variabile comune per 2 applicazioni

    Preciso che il programma che con cui riesco a leggere/modificare le variabili è ProgeCad utilizzando le funzione autolisp (che conosco bene)

    Invece con VBA sono una frana e non so la procedura

    Aiutatemi!
  • Re: Una variabile comune per 2 applicazioni

    Non so se in VB4 fossero presenti comandi per lavorare direttamente con le variabili ambiente ma tieni conto che sono contenute nel registro sotto HKEY_LOCAL_MACHINE\SYSTEM\Controlset001\Control\Session Manager\Envoronment.

    Se la vuoi fare più pulita usa una chiave di registro specifica lasciando perdere le variabili ambiente di windows. Ci sono un sacco di librerie per VB che permettono facilmente di crearne di nuove e di usarle. Sono tipicamente usate in fase di installazione per salvare il path dell'applicazione, le licenze, i paramentri personali dell'applicativo, gli ultimi documenti aperti, ecc...
  • Re: Una variabile comune per 2 applicazioni

    Grazie mille, chip

    E' chiedere troppo se c'è per caso in giro un esempio di codice?
    Anche tra una settimana, quando magari ti capita sottomano un qualcosa che può andare bene.

    Io in pratica, visto che ProgeCad a differenza di AutoCad non gestisce il menù di schermo (è una striscia ai lati con testo e su cui puoi cliccare) devo solo fare un form con tutti bottoni e leggo se da progecad è stato modificata la variabile (che contiene il testo visibile) gli faccio modificare la caption del button; viceversa premendo su un pulsante modifico il valore di un'altra variabile (impostandola ad esempio su 1,2,3 ecc) che viene "riconosciuta" da ProgeCad.

    Spero che poi non ci siano ritardi di comunicazione tra i programmi e che ad esempio non possa leggere la variabile se l'altro programma la sta scrivendo...
  • Re: Una variabile comune per 2 applicazioni

    Questo può andare?
    http://www.itportal.it/developer/vb/registry
  • Re: Una variabile comune per 2 applicazioni

    Credo sia perfetto, di solito riesco a venirne a una se ho le informazioni.
    Se proprio tra un po (minimo 15 giorni perchè vado via) ti disturbo ancora
    ciao, Ambrogio
  • Re: Una variabile comune per 2 applicazioni

    Utilizza le funzioni SaveSetting per scrivere la variabile e GetSetting per leggerla.
  • Re: Una variabile comune per 2 applicazioni

    Grazie, proverò prima così allora, poi se ci sono problemi faccio come dice Chip
    Anch'io con ProgeCad uso, ad esempio per variabile RC1:
    (getenv "rc1") per leggere
    (setenv "rc1" "nuovovalore") per scrivere
Devi accedere o registrarti per scrivere nel forum
7 risposte