E' possibile istanziare un controllo senza passare per un contenitore come il form?
Un grazie si da subito.
E' possibile istanziare un controllo senza passare per un contenitore come il form?
Un grazie si da subito.
Fammi capire.
Vuoi fare un controllo windowless (es una listbox per i cavoli suoi) o vuoi usare un controllo (es. INET o WinSock) dentro un modulo o una classe?
![]()
Si vorrei creare una dll activex con la modalità esecuzione utente invisibile. Quindi senza l'uso del form come contenitore di controlli.
ciao
Non penso si possa fare, i controlli devono essere contenuti all'interno di un contenitore.
E poi, generalmente, le DLL non hanno output a video.
...and I miss you...like the deserts miss the rain...
per fare un prg in vb le form non sono mica obbligatorie...
Il motivo per cui non vorrei usare un form dove mettere il controllo Microsoft Internet Transfer Control 5.0 è che voglio avere:[list=1][*]Creare gli oggetti nello stesso apartment della DLL, ciò non richiede il cross-thread marshaling (più velocità)[*]Una vera serializzazione delle chiamate, non vi possono essere interruzioni da altri thread (possibilita di sporcare dati).[/list=1]
Se posiziono il controllo in una form non posso più marcare, nelle propriatà del progetto, la modalita 'Unattended Execution', che garantisce quanto sopra. Ecco perché ho chiesto se vi è una possibilita di utilizzare il Microsoft Internet Transfer Control 5.0 (o altri controlli) senza l'uso di una form.
ciao
Se hai input/output si, ammesso e non concesso che non si voglia passare attraverso i vari inputbox/msgbox (e come iterazione con l'utente non e' granche'...Originariamente inviato da optime
per fare un prg in vb le form non sono mica obbligatorie...)
...and I miss you...like the deserts miss the rain...
certo, dipende da quello che si deve fare! se calsdn ci dicesse qualcosa in piu'...Originariamente inviato da vonkranz
Se hai input/output si, ammesso e non concesso che non si voglia passare attraverso i vari inputbox/msgbox (e come iterazione con l'utente non e' granche'...)
Allora prova ad istanziare l'oggetto Microsoft Internet Transfer Control 5.0 all'interno della routine che lo dovra' utilizzare, senza caricarlo precedentemente, con qualche cosa del tipo:Originariamente inviato da calsdn
Il motivo per cui non vorrei usare un form dove mettere il controllo Microsoft Internet Transfer Control 5.0 è che voglio avere:[list=1][*]Creare gli oggetti nello stesso apartment della DLL, ciò non richiede il cross-thread marshaling (più velocità)[*]Una vera serializzazione delle chiamate, non vi possono essere interruzioni da altri thread (possibilita di sporcare dati).[/list=1]
Se posiziono il controllo in una form non posso più marcare, nelle propriatà del progetto, la modalita 'Unattended Execution', che garantisce quanto sopra. Ecco perché ho chiesto se vi è una possibilita di utilizzare il Microsoft Internet Transfer Control 5.0 (o altri controlli) senza l'uso di una form.
ciao
dopo aver caricato il controllo Microsoft Internet Transfer Control SOLO nella toolbox (in questo modo verranno attivati anche i riferimenti a questo oggetto)codice:dim msIntTrans As InetCtlsObjects.Inet
...and I miss you...like the deserts miss the rain...
Non c'è nessuna interazione con l'utente. Se non per il semplice fatto che la chiamata puo tornare un valore valido o un errore. Sarà poi la procedura client che interpreta il risultato e interaggise con l'utente vero e proprio e agire di conseguenza.Originariamente inviato da optime
certo, dipende da quello che si deve fare! se calsdn ci dicesse qualcosa in piu'...
La DLL gira su un server, dove nessuno può rispondere a input/output nello schermo del server. Mette solo a disposizione dei servizi ...
ciao