Newsgroup: it.comp.www.asp
Titolo: ActiveX DLL su IIS

Salve a tutti,
nei miei ultimi sviluppi su IIS4, io ho iniziato a usare delle ActiveX DLL
scritte in VB6 che nascondono le chiamate verso il database server;
all'interno delle pagine ASP io mi istanzio l'oggetto creato e ne richiamo i
metodi e le proprieta' come si fa per tutti gli oggetti COM: in questo modo
una parte di codice viene nascosta da occhi indiscreti (parlo di clienti sui
cui server si installa il codice e che possano avere cattive intenzioni
riguardo a 'furti' di tecnologie .... mi e' capitato ....).
Il problema, in tutto cio', consiste nel fatto che ogni volta che tale DLL
viene modificata, deve essere de-registrata e ri-registrata mediante
regsvr32.exe ... se cerco di far cio', mi 'becco' un bel "permission denied"
e l'unico modo che ho per riuscire in questo consiste nello stoppare i
servizi web, registrare il mio oggetto e far ripartire IIS ... c'e' qualcuno
che conosce un metodo meno brutale per fare cio' ??
Grazie in anticipo e saluti.
Cris Di Sclafani

che conosce un metodo meno brutale per fare cio' ??
Il fatto č che se fai girare la tua DLL poi IIS non ti lascia piů
sostituirla......
Se invece non la usi puoisostituirla quando vuoi ma non penso sia utile
: - )
non esiste altro medoto per evitare questo........
devi stoppare, sostituire e riavviare.....
Ciao
Marco

Invece di fare una DLL fatti un CGi in vb!
Per quello basta che riompili e il gioco č fatto!
Spero di esserti stato utile
Liga97
ICQ: 11362849
E-mail: 
lig...@alo.it
 oppure 
a...@ligasoft.com
Web: 
www.ligasoft.com/asp

Spero di esserti stato utile
Cosa intendi per CGI in VB???
Ciao
Marco

Un eseguibile che gira sul server che fa le stesse cose di una DLL ma
una volta installato non necessita di essere registrato o
deregistrato!
Spero di esserti stato utile
Liga97


 deregistrato!
CGI<>oggetto COM. con un CGI perdi tutto quello che di buono ha come
(controllo dei thread, non spreco eccessivo della memoria, possibilità di
chiamarlo in qualsiasi punto della pagina, modificandola quando ti pare
senza modificare altro... etc).
se poi devi fare un CGI, sempre meglio farlo in C o Perl, perchè VB non è
una scheggia...
--
CIAO!.db
Daniele "The Night Surfer" Bochicchio <webmaster(at)ASPItalia.com>
Moderatore di it.comp.www.asp - 
http://www.ASPItalia.com/newsgroup/icwa.asp
Leggi subito i nostri ultimi articoli:
- 'Usare le transazioni in applicazioni ASP 1/2'
http://www.ASPItalia.com/articoli/articoli.asp?data=20000410
- 'Costruire un Form con ASP e Flash 4'
http://www.ASPItalia.com/articoli/articoli.asp?data=20000320
Uno script al giorno? Solo su 
http://www.aspitalia.com/liste/usag/

 Non serve, basta ricompilarla e sostituire quella vecchia.......
Non sono del tutto d'accordo. Dipende da come viene compilata la DLL. Se non
si fa nessuna modifica all'interfaccia ed ai parametri č possibile compilare
mantenendo la compatibilitą binaria. In questo caso, e solo in questo, si
puņ sostituire la DLL.
Se la compilazione con compatibilitą binaria non č possibile, allora č
necessario rimuovere la vecchia DLL con regsrv32 e installare la nuova. Ciņ
č legato al codice CLSID assegnato alla DLL che il SO calcola a partire
dall'interfaccia esposta.
Per il resto, direi che non č necessario stoppare il servizio solo se sei
sicuro che nessuna sessione sia aperta sul sito che fa riferimento alla DLL.
Di quest'ultima affermazione non ho la certezza matematica.
Cordialmente
Marco

che conosce un metodo meno brutale per fare cio' ??
Ciao Cris, questo problema è prassi comune! :-) Effettivamente IIS
mantiene in memoria il tuo componente COM fino all' Application_End
del web server, quindi in pratica finchè non stoppi il servizio. Per
ovviare a questo "inconveniente", ti conviene far girare il componente
sotto Transaction Server. Questa operazione è semplicissima dal punto
di vista operativo, ma c'è molto da sapere dal punto di vista
architetturale: quando usi TS devi sapere quello che fai!
--------
MATRO
YahooMessenger:matrello, Icq:matro
RealPopup, the freeware winpopup replacer
http://members.tripod.com/Matro/realpopup.html