2009-08-27 4 views
20

Ho sviluppato un progetto di installazione Web in VS2008 che installa l'app ASP.NET/Silverlight in IIS. Questo funziona bene ovunque, tranne che in Windows Server 2008.Configurazione Web MSI non riesce su Windows Server 2008

ricevo questo messaggio di errore nel file di registro di installazione MSI:

MSI (c) (C8:D8) [15:02:21:067]: Invoking remote custom action. DLL: C:\Users\ADMINI~1\AppData\Local\Temp\1\MSIB7DD.tmp, Entrypoint: SetTARGETSITE 
MSI (c) (C8!F0) [15:02:21:097]: Creating MSIHANDLE (14) of type 790531 for thread 2288 
INFO : [08/27/2009 15:02:21:097] [SetTARGETSITE       ]: Custom Action is starting... 
INFO : [08/27/2009 15:02:21:107] [SetTARGETSITE       ]: CoInitializeEx - COM initialization Apartment Threaded... 
ERROR : [08/27/2009 15:02:21:107] [SetTARGETSITE       ]: FAILED: -2147221164 
ERROR : [08/27/2009 15:02:21:127] [SetTARGETSITE       ]: Custom Action failed with code: '340' 
INFO : [08/27/2009 15:02:21:137] [SetTARGETSITE       ]: Custom Action completed with return code: '340' 
MSI (c) (C8!F0) [15:02:21:137]: Closing MSIHANDLE (14) of type 790531 for thread 2288 
MSI (c) (C8:D8) [15:02:21:137]: Closing MSIHANDLE (13) of type 790542 for thread 3040 
Action ended 15:02:21: WEBCA_SetTARGETSITE. Return value 3. 
MSI (c) (C8:E0) [15:02:21:147]: Doing action: FatalErrorForm 

Ho provato googling i vari codici di errore, ma non sto avendo molto fortuna.

Qual è il problema?

+0

La versione esadecimale del codice di errore è 0x80040154 - sembra essere qualcosa collegato a COM. –

risposta

37

Come il commento, sembra che questo potrebbe essere qualcosa relativo alla COM. Ciò mi porterebbe a credere che l'MSI stia usando qualcosa che è probabilmente specifico per IIS 6.

Assicurarsi che le opzioni di compatibilità di IIS 6 siano installate con IIS 7 in Windows 2008. Questo dovrebbe installare i componenti COM che il tuo MSI sta cercando di accedere.

... solo una supposizione, naturalmente. In bocca al lupo.

+0

E una buona ipotesi era - che funzionava. Grazie mille! –

+0

0x80040154 è "Classe non registrata", suona molto COM-related. – leiflundgren

+0

fantastico risolto il mio problema :) – melaos

4

I progetti di installazione Web (vdproj) richiedono l'installazione di IIS 6 Management Compatibility su IIS 7 affinché il programma di installazione funzioni correttamente. Sono necessarie solo le opzioni di compatibilità Metabase e WMI selezionate.

Ecco un buon collegamento sull'argomento che descrive il problema e come è possibile aggiornare il programma di installazione di richiedere di essere controllare per l'installazione di continuare queste opzioni: http://devio.wordpress.com/2011/04/26/pitfalls-installing-web-setup-msi-on-iis-7/