Newsgroup: it.comp.lang.visual-basic
Titolo: Aggiunta componente OCX

Ciao, ho una domanda da porvi.
Ho distribuito un'applicazione in VB6, con setup fatto con il wizard di VB.
Ogni qualvolta facevo delle modifiche, comunicavo agli utenti di scaricare
il solo eseguibile, senza bisogno di scaricare tutto il setup di nuovo.
Adesso però ho aggiunto al programma un nuovo componente ocx, il common
dialog (comdlg32.ocx).
C'è qualche sistema per distribuire l'applicativo (exe) e registrare l'ocx
agli utenti che hanno già la versione precedente senza doverli per forza
obbligare ad effettuare di nuovo i setup, che è piuttosto corposo ?
Ciao e grazie.
Paolo

 obbligare ad effettuare di nuovo i setup, che è piuttosto corposo ?
Hai un po' di soluzioni, nessuna molto comoda.
La prima è che la prossima volta nel setup ci infilerai tutto quello che usi
e che penserai di usare :)
La seconda: dai ai tuoi utenti l'ocx e gli dici di registrarselo loro
(regsvr32.exe mioocx.ocx)
La terza: fai un pacchetto di installazione separato per i soli componenti
aggiuntivi
La Quarta: simile alla terza, mai provata: alcuni file come gli zip
autoestraenti permettono di eseguire un comando a fine scompattazione: gli
fai eseguire la registrazione.
Oltre ovviamente al rifacimento totale del setup.
Ciao
--
Reporting tool: 
http://www.neodatatype.net
Qualunque mentecatto può scrivere codice che un computer possa capire.
I buoni programmatori scrivono codice che gli uomini possano capire.
[Martin Fowler]

 aggiuntivi
Credo che per evitare problemi con molti utenti questa sia la soluzione
migliore.

 obbligare ad effettuare di nuovo i setup, che è piuttosto corposo ?
Togli quell'ocx che non serve a nulla :-)
Cerca sul sito comune 
www.it-lang-vb.net
 una classe di Roal Zanazzi
che lo sostituisce e puoi includere direttamente nell'eseguibile senza 
dover rifare il setup. E' sufficiente che scrivi "common dialog" nel
campo di ricerca rapida.
-- 
ciao, hal

Vi ringrazio per l'aiuto, adesso valuterň la soluzione piů indolore...
Visto che il common dialog mi serve per far scegliere all'utente un file da
aprire, ho pensato anche che potrei, in qualche modo, utilizzare i controlli
drivelistbox, dirlistbox e filelistbox.. anche se di sicuro richiedono piů
codice per la gestione.
Grazie ancora!
Paolo

 se di sicuro richiedono più codice per la gestione.
Se il problema si pone solamente per il commondialog, direi che la risposta 
di Hal è perfetta.
E' un componente che può benissimo essere attivato senza riferimenti (beh, 
con alcuni accorgimenti a seconda del S.O...).
Ciao
Alberto
-- 
E tutto mi sembrava andasse bene... 

 obbligare ad effettuare di nuovo i setup, che è piuttosto corposo ?
Io uso Inno Setup 
http://www.jrsoftware.org/isinfo.php
, oltre a fare il
setup corposo, faccio gli aggiornamenti che comprendono il nuovo
eseguibile ed eventualmente componenti/file aggiuntivi, è in pratica un
piccolo setup dove perà faccio una copia di backup di alcuni file prima di
rimpiazzarli e non chiedo dove ha installato l'applicativo l'utente perchè
lo leggo dal registry.
-- 
Inno Setup Extension Knowledege Base
http://www13.brinkster.com/vincenzog
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 con alcuni accorgimenti a seconda del S.O...).
Ok, la sto provando e mi va benissimo. Ma ho un paio di dubbi:
- Le API che vengono utilizzate, prevedono la presenza del file 
comdlg32.dll. Non so però se qualsiasi macchina "vergine" abbia tale dll...
- Esattamente quali sono gli accorgimenti a seconda del S.O. ?
Paolo

 - Esattamente quali sono gli accorgimenti a seconda del S.O. ?
Controlla la documentazione della funzione su MSDN: c'è scritto tutto.


 - Esattamente quali sono gli accorgimenti a seconda del S.O. ?
Non mi ricordavo con precisione.
Sono andato a controllare, e mi sono accorto che non ci sono accorgimenti, 
ma differenze a seconda del S.O..
Ma si tratta di differenze estetiche della dialog.


 Ma si tratta di differenze estetiche della dialog.
Ti ringrazio Albe. In effetti ho trovato su MSDN che la dll è nativa di
tutti i so Windows, quindi nessun problema, ma non riuscivo a trovare la
dissferenze per i vari S.O.
Tutto chiaro. Grazie a tutti!
Paolo