2011-04-18 72 views
0

我正在将项目升级到.NET 4.0,并且在尝试构建解决方案时出现此错误:无效参数。参数“ItemSpec”不能为空。 c:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Microsoft.Common.targets 1558 9ResolveComReference无效的参数。参数“ItemSpec”不能为空

有没有办法找到什么被传递为null到ResolveComReference任务?

回答

0

试试这个;暂时以下内容添加到发生故障的项目文件:

<Target Name="DiagnoseNullItems" 
    BeforeTargets="ResolveComReferences" 
    AfterTargets="ResolveAssemblyReferences"> 
    <Message Importance="High" Text="COMReference is '@(COMReference)'" /> 
    <Message Importance="High" Text="COMFileReference is '@(COMFileReference)'" /> 
    <Message Importance="High" Text="ReferencePath is '@(ReferencePath)'" /> 
    <Message Importance="High" Text="_ResolveComReferenceCache is '@(_ResolveComReferenceCache)'" /> 
</Target> 

我认为这是所有的人,除非是一些其他的$()的参数是任务的类型ITaskItem也。如果没有显示空项目,则对传递给ResolveComReference任务的属性执行相同操作。