Newsgroup: it.comp.lang.visual-basic
Titolo: DCOM

Ho provato a fare una semplice dll messa pero'
in modo che possa funzionare come remote server.
Quello che vorrei fare, e' dopo aver abilitato
dcom, poter usare questa dll da un altro pc.
Mi manca un tassello del puzzle. Che cosa devo
fare sul pc remoto dove voglio utilizzare la dll?
Infatti se provo a lanciare un progetto che usa
questa dll, istanziandola pere' con il createobject
e specificandogli come secondo parametro il nome del
pc dove risiede ed e' effettivamente registrata 
la dll, il progetto si incacchia dicendo che la classe
non e' registrata. Sfido io ... non l'ho registrata
apposta. Ma mi aspetto che il fatto di poter creare una
dll che sia un remote server ... consista proprio
nel non dover registrare la dll su tutti i client.
Help?
Ciao Andrea
P.S. tra l'altro pensavo di dover configurare il dcom
sul client (NT workstation), ma entrando nel dcom
configurator, lui elenca solo le classi disponibili nel
sistema ... e non ti da' la possibilita' di aggiungere
nessuna voce.
Saluti Andrea MORO
-- 
Posted from 
pop.tiscalinet.it
 [195.130.225.147] (may be forged) 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

nel non dover registrare la dll su tutti i client.
Se non ricordo male invece va registrata. Questo non significa che vada
installata, solo che ne va fatta la  registrazione: quando compili un
componente remoto viene generato un file .tlb che ne consente la
registrazione (mi par di ricordare).
Ciaotutti,
Asterix

fare sul pc remoto dove voglio utilizzare la dll?
per quanto ricordo, mi sembra che al momento
di utilizzare la DLL (con la funzione CreateObject)
bisognasse specificare anche il nome computer (network name)
sul quale risiede, ad esempio
set x = CreateObject("mydll.myclass","computer_remoto")
pero'.. non ho mai provato
Ciao
Enrico

 ha scritto nel messaggio
news:3B175A8A...@mail.tiscalinet.it...
Ho provato a fare una semplice dll messa pero'
in modo che possa funzionare come remote server.
Quello che vorrei fare, e' dopo aver abilitato
dcom, poter usare questa dll da un altro pc.
Mi manca un tassello del puzzle. Che cosa devo
fare sul pc remoto dove voglio utilizzare la dll?
Infatti se provo a lanciare un progetto che usa
questa dll, istanziandola pere' con il createobject
e specificandogli come secondo parametro il nome del
pc dove risiede ed e' effettivamente registrata
la dll, il progetto si incacchia dicendo che la classe
non e' registrata. Sfido io ... non l'ho registrata
apposta. Ma mi aspetto che il fatto di poter creare una
dll che sia un remote server ... consista proprio
nel non dover registrare la dll su tutti i client.
Help?
Ciao Andrea
P.S. tra l'altro pensavo di dover configurare il dcom
sul client (NT workstation), ma entrando nel dcom
configurator, lui elenca solo le classi disponibili nel
sistema ... e non ti da' la possibilita' di aggiungere
nessuna voce.
End cut  ------------------------------------------------------------------
Ti farà piacere sapere che devi registrare tutto sia sul client che sul
server.
E' un problema che ho da molto ma in effetti c'è poco da fare ... se il
componente gestisce eventi devi assolutamente concedergli tutti gli accessi
possibili (quind i meccanismi protezione di NT vanno a farso friggere).
Nel configuratore del DCOM non puoi aggiungere le classi a tuo piacimento,
puoi solo modificare alcuni parametri tra le classi registrate.
Se installi il componente client su Win9x devi scaricare dal sito Microsoft
i configuratori appositi ...
Fammi sapere
    Saluti

Non vedo dove sia la differenza tra registrare e installare un componente.
Se lo registri, automaticamente e' installato. 
Che poi sia su di un altro server, la cosa e' alquanto irrilevante se non
per la configurazione che devi fare al dcom.
Ciao Andrea

La registrazione e' fatta ... 
a mano ... seguendo un documento microsoft ...
quello di cui si lamenta ora sono i permessi.
Ma sinceramente oltre a dargli launch e access ... 
in piu' gli ho dato anche quello per vedere il registry
benche' non ne abbia bisogno ... non so' cosa dare.
Un aiuto???
Ciao Andrea
P.S. visto che siamo in tema ... e che il programma
di installazione sara' lo stesso per macchina server e client
con l'unica differenza che la server sara' quella che avra'
dietro il db e la client lo avra' ma vuoto.
C'e' un modo da programma per lanciare un file reg e inserire
delle chiavi ... e un modo per cancellare le chiavi, che non
siano le chiamate al registry per scrivere, cancellare e
modificare??
Perche' sostanzialmente cosa dovrei fare. Dal pannello di controllo
della mia applicazione, se seleziono che il db e' quello del server
dovrei registrare la dll in modo che venga lanciata dal server.
Diversamente devo lasciare quelle locali e se prima avevo selezionato
il server (e quindi modificato il registry) devo ripristinare lo stesso
in modo che la dll non punti pie' in remoto, ma al pc locale.
Ciao Andrea

 wrote in message
news:3b8a610b.01061...@posting.google.com...

Se installi un componente ne hai in locale una copia, se lo registri hai
solo i suoi dati nel registry.
Ciaotutti,
Asterix