2

1 つのプロジェクトでコード分析を手動で実行しようとすると、次のエラーが発生します: CA0055: xxx.dll を読み込めませんでした。

これは、xml ログからの詳細なログです。

<Exception Keyword="CA0055" Kind="AssemblyLoad">
   <Type>Microsoft.FxCop.Common.AssemblyLoadException</Type>
   <ExceptionMessage>Could not load D:\...\bin\debug\xxx.dll.</ExceptionMessage>
   <InnerType>System.IO.InvalidDataException</InnerType>
   <InnerExceptionMessage>Invalid type for custom attribute argument</InnerExceptionMessage>
   <InnerStackTrace>   at   

Phx.Metadata.LoaderImplementation.DeserializePointerTypeConstant(Type type,   
AttributeBlobReader&amp; blobReader, Boolean doResolveEnums)
at Phx.Metadata.LoaderImplementation.DeserializeConstant(Type type,  
AttributeBlobReader&amp; blobReader, Boolean doResolveEnums)
at Phx.Metadata.MetadataLoader.ParseCustomAttribute(AttributeSymbol attributeSymbol,  
Boolean doResolveEnums)
at Microsoft.FxCop.Engines.Phoenix.AssemblyLoader.LoadAttributes(List`1 attributes,  
MetadataLoader metadataLoader)
at Microsoft.FxCop.Engines.Phoenix.AssemblyLoader.LoadAttributes(ProgramUnit 
programUnit, MetadataLoader metadataLoader)
at Microsoft.FxCop.Engines.Phoenix.AssemblyLoader.LoadAssembly(String filePath)
at Microsoft.FxCop.Engines.Phoenix.PhoenixAnalysisEngine.AnalyzeInternal()     

</InnerStackTrace>
</Exception>

パスに xxx.dll が存在し、アクセスが許可されています。

誰かが間違っている可能性があることを助けることができますか?

ありがとう

4

1 に答える 1

1

フェニックスアセンブリローダーでバグが発生した可能性があります。残念ながら、例外の詳細には、Phoenixが爆撃時に解析しようとしたカスタム属性に関する情報が含まれていないため、回避策があるかどうかを推測することはほとんど不可能です。問題の原因となっているアセンブリを共有できない場合は、問題のある属性に関する詳細情報を抽出できるように、デバッガーをfxcopcmd.exeプロセスにアタッチすることをお勧めします。

これを行うことができないが、問題のDLLをMicrosoftと共有できる場合は、https://connect.microsoft.com/VisualStudio/Feedbackのプライベートバグレポートにアップロードすることを検討してください。

于 2012-05-17T14:24:20.990 に答える