Problema client web service in windows 2000

giovedì 30 marzo 2006 - 11.10

spasqua Profilo | Newbie

Ciao a tutti,
ho realizzato un web service .NET con interfaccia COM, inoltre ho realizzato una libreria .NET con interfaccia COM che lo richiama..
i miei problemi nascono sotto windows 2000 dove ricevo un errore del tipo:

System.IO.FileNotFoundException error or one of its dependencies ecc...

dopo aver indagato un po ho scoperto che tale problema è dovuto ad xmlserializer, che crea al volo una classe c# da xml e la compila come libreria, ho quindi scaricato un tool xmlserializerPreCompiler e con LA LIBRERIA DI TEST fornita a corredo ho provato la funzionalita di xmlserializer.. sotto xp tutto bene... in windows 2000 di nuovo errore:

fatal error CS0007: Unexpected common language runtime initialization error -- ' Interfaccia non registrata. '
errore generato durante la compilazione del sorgente generato a runtime...

questo problema non puo essere generato da un xml errato.. visto che ho utilizzato quello di test e sotto xp funziona... a nulla poi è servito cambiare i permessi sulle dir temporanee.. anche perchè il problema non è dovuto al fatto che il compilatore non riesca a copiare i file ma proprio non riesce a compilare...solo sotto windows 2000
qualche idea?
Ciao a tutti

Stefano Pasqualini (EITS srl)

Brainkiller Profilo | Guru

>questo problema non puo essere generato da un xml errato.. visto
>che ho utilizzato quello di test e sotto xp funziona... a nulla
>poi è servito cambiare i permessi sulle dir temporanee.. anche
>perchè il problema non è dovuto al fatto che il compilatore non
>riesca a copiare i file ma proprio non riesce a compilare...solo
>sotto windows 2000
>qualche idea?

Ciao Stefano,
non ho ben capito all'inizio del tuo post quando parli di .NET con interfaccia COM. Come saprai sono due architetture diverse, mi chiedo come hai fatto ad implementare una cosa di questo tipo. Puoi dare ulteriori dettagli ? grazie
ciao

David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/

spasqua Profilo | Newbie

ciao
Per esporre come COM il web service ho creato una classe e la relativa interfaccia, poi con System.runtime.interop ho aggiunto in testa alla classe e all'interfaccia i metadati necessari ad un normale componente COM (Guid, interfacce com ecc..), inoltre nel build del progetto ho messo a true la proprieta "com interop" (quest'ultima cosa genera la tlb, cosa che puoi fare anche da linea di comando).

(ps: per metadati intendo le proprieta racchiuse fra parentesi quadre in testa ai metodi o alle classi, non conosco al definizione "ufficiale" in .NET )

Ciao
Stefano Pasqualini (EITS srl)
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5