VB6: Installazione programma Exe che lancia un Exe ActiveX

di il
1 risposte

VB6: Installazione programma Exe che lancia un Exe ActiveX

Salve a tutti.
Ho scritto 2 programmi in VB6. Il programmaPrincipale è di tipo EXE standard, mentre il programmaSecondario è un EXE ActiveX.
Nel programmaSecondario ho creato un modulo di classe (modFunzioni) con una funzione pubblica (ApriForm) che fa aprire una semplice form.
Nel programmaPrincipale, ho inserito tra i riferimenti, programmaSecondario.exe. Ho dichiarato una variabile
lancio As programmaSecondario.modFunzioni
Ad un certo punto la istanzio con

Set lancio = New programmaSecondario.modFunzioni
Call lancio.ApriForm()
A questo punto ho preparato una piccola installazione che serve a copiare programmaPrincipale.exe e programmaSecondario.exe in una cartella specificata dall'utente.
Se a questo punto lancio (con doppio click) programmaPrincipale.exe, mi da un errore (dice controllo activeX mancante o una cosa simile).
Ho provato a registrare programmaSecondario.exe con regsvr come si fa con le dll, ma mi da errore e se rilancio programmaPrincipale.exe mi continua a dare l'errore precedente.
Ho provato per caso a fare doppio click su programmaSecondario.exe (non dovrebbe fare niente, visto che viene attivato solo richiamando la sub ApriForm, o almeno così credo. Sono alle prime armi con queste cose...). Ebbene, da quel momento in poi programmaPrincipale.exe ha iniziato a funzionare.

Cosa devo fare nell'installazione perchè tutto funzioni senza questo trucchetto del doppio click su programmaSecondario.exe?

Spero di essermi spiegata a sufficienza.

Grazie

1 Risposte

  • Re: VB6: Installazione programma Exe che lancia un Exe ActiveX

    Ho fatto qualche ricerca e ho provato a usare il comando
    <percorso eseguibile> /regserver
    tramite Esegui... e tutto funziona.

    Adesso però ho 2 problemi:
    - come faccio a lanciare tale comando da un programma VB6? Ho provato con
    Call Shell(<percorso eseguibile> & " /regserver")
    e sembra funzionare. E' il metodo giusto?
    - siccome l'installazione che ho preparato serve anche per copiare altri file, è possibile capire, tramite qualche api magari, se un certo file exe è di tipo Exe standard o Exe activeX?

    Grazie
Devi accedere o registrarti per scrivere nel forum
1 risposte