2012-05-03 6 views
9

La mia squadra e io riceviamo questo errore spesso ma a caso e non siamo sicuri del motivo per cui lo fa. Per aggirarlo, o costruiamo la soluzione un paio di volte per riavviare Visual Studio (10). Ecco l'errore che ho quando provo a costruire:Errore GenerateApplicationManifest

 
Error 5 The "GenerateApplicationManifest" task failed unexpectedly. 
System.Runtime.InteropServices.COMException (0x8731F230): Exception from HRESULT: 0x8731F230 
at System.Runtime.InteropServices.UCOMITypeInfo.ReleaseTypeAttr(IntPtr pTypeAttr) 
at Microsoft.Build.Tasks.Deployment.ManifestUtilities.ComImporter..ctor(String path, OutputMessageCollection outputMessages, String outputDisplayName) 
at Microsoft.Build.Tasks.Deployment.ManifestUtilities.FileReference.ImportComComponent(String path, OutputMessageCollection outputMessages, String outputDisplayName) 
at Microsoft.Build.Tasks.GenerateApplicationManifest.AddIsolatedComReferences(ApplicationManifest manifest) 
at Microsoft.Build.Tasks.GenerateApplicationManifest.BuildApplicationManifest(ApplicationManifest manifest) 
at Microsoft.Build.Tasks.GenerateApplicationManifest.OnManifestLoaded(Manifest manifest) 
at Microsoft.Build.Tasks.GenerateManifestBase.BuildManifest() 
at Microsoft.Build.Tasks.GenerateManifestBase.Execute() 
at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() 
at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask, Boolean& taskResult) 

Grazie per il vostro aiuto!

+0

La tua soluzione ha una combinazione di progetti C++ e .NET e i tuoi progetti .NET utilizzano i componenti COM che vengono creati? Ecco alcune cose da provare: - Puoi provare a impostare il numero massimo di build di progetti paralleli su 1. - Prova a creare la soluzione con la riga di comando (ad es. MSBUILD) per vedere se ottieni lo stesso comportamento - Chiudi Tutte le schede Designer e ToolBox prima della creazione –

+0

Uno dei progetti è esposto per ComInterop? In tal caso, potrebbe trattarsi di un processo che trattiene il riferimento alla libreria dei tipi da quando è stata eseguita la soluzione localmente (ad esempio il debug in VS). Potrebbe valere la pena assicurarsi che tutti i processi che utilizzano quell'oggetto COM (eventualmente app esterne che potresti aver utilizzato CREATEOBJECT in) non siano in esecuzione. –

+0

Prova questo link sembra che questa persona abbia lo stesso problema di te: [Visual Studio] (http://social.msdn.microsoft.com/Forums/ta/msbuild/thread/30165a0b-9d09-4096-9655-9edbbd9bc099) – chandhooguy

risposta

2

Mi sono imbattuto in un problema simile e ho scoperto che era perché uno dei percorsi dell'assembly era troppo lungo. Non capisco davvero perché in alcuni casi potrebbe funzionare per te, e in altri non lo fa però, quindi potrebbe essere qualcos'altro, ma non fa mai male controllarlo.

Credo che la lunghezza massima sia di 260 caratteri.

+0

Hai riscontrato il problema casualmente? In caso contrario, significa che il problema è più semplice da risolvere rispetto al problema descritto (COMException) –