Press "Enter" to skip to content

Errore 193 0xc1 Avviando un servizio

Mi ci sono imbattuta nelle mie prove e test per la presa in carico di un progetto non mio, una delle cose che ho fatto per portare il progetto dal codice scritto in modo “selvaggio” (senza commenti e con il minimo uso dell’OOP) agli standard interni che ci siamo dati in azienda, è quello di togliere tutto il codice dall’interno del progetto del servizio lasciandovi solo gli entry point, in questo modo, le funzionalità svolte dal servizio possono essere testate utilizzando una applicazione windows normale oppure gli UnitTest, e per testare il servizio non è necessario fare alcun tipo di debug, visto che fa solo uno start e instanzia un oggetto oppure uno stop e cestina l’oggetto.

Mentre facevo questo, semplicemente buttando via il vecchio servizio e generandone uno equivalente, mi sono imbattuta in questo strano errore di avvio, questo errore, è causato dal fatto che, nella mia furia estrattiva, avevo tolto dal progetto del servizio la classe contenente il project installer mettendola su una diversa DLL, credendo erroneamente che l’installer prendesse l’assembly del mio servizio, di cui gli davo il nome e lo installasse indipendentemente da dove questo fosse situato. Invece, a ragione, l’installer utilizza l’assembly dove si trova e non uno esterno, pertanto, estrarre il codice va bene, ma l’installer è necessario resti dentro l’eseguibile del progetto altrimenti Errore 193 0xc1.

Oltre a questo, avevo commesso un’altro errore, infatti, il nome della classe del servizio non è uguale al nome del servizio (questa è stata una scelta effettuata alle origini su cui non indago) per cui, avendo dato all’installer un nome mentre il servizio ne aveva uno diverso, di qui l’errore 193 0xc1.

Perché bloggare questa sciocchezza ed espormi al generale ludibrio per la mia pochezza di programmatore?
Perché su google ho trovato 10000 richieste su cosa potesse essere questo errore, e nessuna risposta. Quindi spero che qualcuno incappando nel mio stesso errore possa beneficiarne.

Post del 2006 ma sono certa che nel 2017 ugualmente può accadere ;o)