Errore su servizio windows
JoeRuspante
JoeRuspante non è online. Ultima attività: 10/03/2010 9.49.05JoeRuspante
il 21 gennaio alle 12:50
167 messaggi dal 08 febbraio 2009
Salve a tutti..

Ho un banale servizio scritto in C# 2008 Express.
Se compilo il progetto e lo installo sul mio computer mediante installutil, funziona tutto bene.

Se copio gli oggetti (directory bin/Release) sul computer di un mio amico e lo installo, tutto sembra funzionare bene (ovvero il servizio è installato).

Se però provo a lanciare il servizio, esce con errore dicendo che non è riuscito a lanciare il servizio (non trovo alcuna informazione utile nel registro di sistema se non il fatto che è "scaduto il tempo").


A questo punto ho dato a lui i sorgenti, ho installato C#2008, ricompilato, installato e tutto è andato a buon fine.


Alla fine, per vedere cosa potesse essere, ho provato ad installare tale servizio su un terzo PC...
Se lo compilo col mio PC non funziona.
Se lo compilo col PC del mio amico va...


Cosa posso controllare?

PS: Non uso dll particolari se non quelle di log4net (per i log), però quella DLL ho verificato fosse la stessa
RE: Errore su servizio windows
Ricciolo
Ricciolo non è online. Ultima attività: 06/03/2010 13.03.41Ricciolo Top Poster
il 22 gennaio alle 10:15
La prova del 9 è sicuramente provare il servizio senza fargli fare niente, per capire se il tuo codice ha dei prerequisiti che gli possono dare problema. Dato che usi log4net potresti intercettare tutto (nello start) e farti scrivere che eccezioni si verificano. Magari con log4net scrivi in una dir dove non puoi? Che utente usi? Usi differenze di compilazione x86/x64 o usi any cpu?

Ciao

Il mio blog
Homepage
RE: Errore su servizio windows
JoeRuspante
JoeRuspante non è online. Ultima attività: 10/03/2010 9.49.05JoeRuspante
il 22 gennaio alle 16:04
167 messaggi dal 08 febbraio 2009
Nella "start" scrivo già dei log, però questi non vengono scritti.

Ho provato a fare un po' di prove sui permessi (perchè è la prima cosa a cui ho pensato), però li escluderei, poichè ho provato a cambiare l'utente del servizio per usare lo stesso con cui ci si logga... E con quell'utente possiamo scrivere in tutte le cartelle.

Ho anche provato a dargli l'utente Administrator, però non cambia nulla.

Per la compilazione, non ci avevo guardato, però uso "Any CPU"...


Per quanto riguarda i "pre-requisiti", se io prendo il mio codice (tutta la soluzione), la porto su un altro pc e semplicemente "la ricompilo", perchè dovrebbero cambiare i pre-requisiti?

Ovvero, io ho preso la cartella completa del progetto e l'ho copiata su un altro computre.
Ho aperto da entrambi i computer il progetto su C# 2008 ed ho verificato che tutti i tab di "Proprietà" della soluzione fossero identici.

Compilo...

Prendo la directory "bin\Release" del mio computer ed installo quel servizio... Non va
Prendo la medesima directory dell'altro computer... Funziona

In tal caso, come posso verificare se c'è qualcosa a livello di "pre-requisiti"?


Ad ogni modo, appena posso, provo a creare un servizio "vuoto" e vedo cosa succede... (purtroppo non ho qui tutti i PC per fare le prove)

L'unica cosa che mi è venuta in mente... Il mio è un PC su VmWare (ovvero è una Virtual Machine) mentre il suo è un PC fisico...

 

Torna al forum |   Feed RSS
ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.
COMMUNITY
ULTIMI MESSAGGI
UTENTI ONLINE
MEDIA
IN EVIDENZA
MISC
Powered by .db Forums "Caesar Reborn" v. 2010.3.1