Opções de linha de comando do fxcopcmd exe


Travis Illig.
Paraesthesia: desenvolvimento e algumas imagens de meu gato.
Como passar parâmetros para FxCop do Visual Studio - OR - Como corrigir o aviso temido CA0060.
Se você ativou o FxCop para executar em seus projetos no Visual Studio, é provável que você tenha visto o temido aviso CA0060:
MSBUILD: aviso: CA0060: a assembléia indiretamente referenciada 'SomeAssembly, Version = 1.2.3.4, Culture = neutro, PublicKeyToken = abcdef1234567890' não pôde ser encontrada. Essa montagem não é necessária para análise, no entanto, os resultados da análise podem estar incompletos. Esta montagem foi referenciada por: C: \ Path \ To \ Some \ Dependency. dll.
Os documentos MSDN neste aviso dizem que você deve apenas adicionar uma referência à assembléia referenciada indiretamente para que o FxCop possa encontrá-lo. O problema é que, se você já tem uma referência a uma versão posterior da dependência indireta, você não pode realmente fazer referência a ambas as versões.
Encontrei um post do fórum que explica que você pode alterar o comportamento do FxCop para permitir a resolução de assemblies de dependência para ver a informação do nome forte, mas ignorar a versão. Você faz isso adicionando o seguinte ao FxCopCmd. exe. config na pasta C: \ Arquivos de programas (x86) \ Microsoft Visual Studio 10.0 \ Ferramentas de equipe \ Ferramentas de análise estática \ FxCop:
& lt; add key = "AssemblyReferenceResolveMode" value = "StrongNameIgnoringVersion" / & gt;
Claro, se você fizer isso, afeta todas as soluções em sua máquina. Além disso, você tem que dizer a cada desenvolvedor em sua equipe que faça a mesma mudança, e ... ugh. Não.
Um pouco Reflector mostra que você pode realmente especificar muito mais na linha de comando do que executar o FxCopCmd /? diz que você pode. Aqui estão os que encontrei que não aparecem:
Esse assemblycomparemode é o que liga ao valor AssemblyResolveReferenceMode de FxCopCmd. exe. config. Na verdade, você pode passar esse valor na linha de comando se você estivesse executando o FxCopCmd. exe manualmente:
FxCopCmd. exe / assemblycomparemode: StrongNameIgnoringVersion [e o resto de seus parâmetros]
Exceto, você está executando a partir do Visual Studio, para que você não tenha acesso à linha de comando ... ou você?
Puxando o arquivo C: \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ CodeAnalysis \ Microsoft. CodeAnalysis. Targets que é instalado com o Visual Studio (e é o que executa o FxCop), verifica-se que se você forneça uma propriedade chamada $ (CodeAnalysisAdditionalOptions) com a lista de opções de linha de comando adicionais que deseja para o FxCop, elas serão passadas. Você só precisa fazer um pequeno manual. csproj hacking para adicionar a propriedade.
Agora, quando o FxCop é executado, essa lista de parâmetros de linha de comando será transmitida juntamente com tudo o resto e o aviso do CA0060 desaparecerá. Além disso, a configuração é transportada juntamente com o projeto individual, por isso não afeta os arquivos de configuração instalados e você não precisa fazer com que nenhum desenvolvedor faça nada em suas máquinas. Feito!
Direitos autorais e cópia; 2017 - Conteúdo do blog Travis Illig licenciado sob Creative Commons CC BY 2.5 | Projeto de site baseado no tema Greyshade sob a licença MIT.

Opções de linha de comando do Fxcopcmd exe.
As seqüências de sinais especiais, geralmente no terminal amino, são usadas para direcionar certas proteínas para exportação da célula; outras proteínas são orientadas para distribuição ao núcleo, a superfície celular, o citossol e outras localizações celulares. Todos os fxcopcmd abdominais bariátricos. Para instalar o XenDesktop, execute o comando. A segunda conclusão foi a fxcopcmd social-afetiva. Para adicionar opções de linha de comando a qualquer programa, primeiro você deve criar um atalho do Windows no arquivo EXE do programa. Reduzir a tabela de conteúdo Expandir a tabela de conteúdo Esta documentação é arquivada e não está sendo mantida. Os construtores cortaram os sulcos na base da pirâmide, como em um e parcialmente os sulcos com 9.
Vídeo por tema:
Parte 6 - Compilando o código C # usando 360bet no prompt de comando C #
7 pensamentos sobre & ldquo; Opções de linha de comando Fxcopcmd exe & rdquo;
Alguns anos atrás, em 2008, planejei fazer milhões de opções de negociação.
Guia on-line de troca de opções com cobertura detalhada de estratégias e terminologia básicas e avançadas.
Você pode ver como eu uso minhas estratégias de negociação forex no meu site:
Descubra as últimas notícias para Beneficial Bancorp, Inc.
Envie ligações comerciais específicas, ofertas de pós-venda, encontre novos parceiros de negócios.
E se vendemos uma opção de compra.
DailyFX fornece notícias e análises técnicas sobre as tendências que.

opções de linha de comando Fxcopcmd. exe
Obter através da App Store Leia esta publicação em nosso aplicativo!
Execute a ferramenta de análise de código da linha de comando no VS 2018.
Eu quero executar a ferramenta de análise de código de código fornecida pelo VS 2018 da linha de comando da mesma maneira que eu consegui gerar relatórios do FxCop, algo assim:
Observe que eu não quero usar a ferramenta FxCop, em vez disso eu quero iniciar a ferramenta de análise de código para gerar um relatório, semelhante ao que é gerado quando eu selecionar:
Analise -> Run Code Analysis on Solution.
Alguma idéia de como isso pode ser realizado?
UPDATE: Após algumas pesquisas, descobri que a análise de código de execução realmente executa o FxCopCmd. exe localizado em C: \ Arquivos de Programas (x86) \ Microsoft Visual Studio 14.0 \ Ferramentas de Equipe \ Ferramentas de Análise estática \ FxCop \ FxCopCmd. exe.
Finalmente, encontrei-me uma solução para isso.
Tudo o que eu tinha que fazer era adicionar um novo parâmetro ao comando MSBuild:
Na verdade, isso gera um relatório xml que parece 1: 1 para o relatório fxCop gerado.

opções de linha de comando Fxcopcmd. exe
Obter através da App Store Leia esta publicação em nosso aplicativo!
Como posso executar as regras FxCop selecionadas usando a linha de comando?
Eu sei que você pode criar um projeto e usar caminhos relativos, mas não quero manter o arquivo do projeto no controle de versão. Digamos por uma questão de brevidade que eu só quero executar uma regra, CA1001, do Microsoft. Design. Como posso especificar isso com argumentos de linha de comando e fazê-lo funcionar em um corredor de compilação TeamCity FxCop?
Existe uma opção de linha de comando / ruleid que pode ser usada para isso. Ele não aparece no tópico de ajuda MSDN para as opções de linha de comando fxcopcmd. exe, mas você pode ver uma descrição executando fxcopcmd. exe /? .
A ferramenta está localizada em \ FxCopCmd. exe. Uma lista de opções pode ser encontrada aqui. Todas as opções devem ser anexadas com dois pontos e o parâmetro (se houver), mas sem espaços em branco. Um comando básico é o seguinte.
Você também pode aplicar várias regras, como o que for necessário:
No comando acima, os sinalizadores são:
/ regra Um caminho para a regra dll que você deseja incluir.
/ out Para qual arquivo a análise deve ser salva.
/ sumário Faz com que o FxCop inclua um resumo no relatório.

opções de linha de comando Fxcopcmd. exe
O site do software pode ser encontrado aqui.
Este guia foi iniciado em maio de 2018.
A versão 10.0 está disponível em 4.0.
A versão 1.35 está disponível em versões anteriores do.
Instalação.
Referências.
No entanto, na ferramenta GUI, é possível ignorar essas referências e elas não afetarão seu relatório. Infelizmente, esta opção não está disponível na linha de comando e não será no futuro.
Interface da Linha de comando.
/ rule: "C: \ Program Files \ Microsoft FxCop 1.35 \ Rules \ DesignRules. dll"
/ rule: "C: \ Program Files \ Microsoft FxCop 1.35 \ Rules \ GlobalizationRules. dll"
/ rule: "C: \ Program Files \ Microsoft FxCop 1.35 \ Rules \ InteroperabilityRules. dll"
/ regra: "C: \ Arquivos de Programas \ Microsoft FxCop 1.35 \ Rules \ MobilityRules. dll"
/ rule: "C: \ Arquivos de Programas \ Microsoft FxCop 1.35 \ Rules \ NamingRules. dll"
/ regra: "C: \ Program Files \ Microsoft FxCop 1.35 \ Rules \ PerformanceRules. dll"
/ regra: "C: \ Arquivos de Programas \ Microsoft FxCop 1.35 \ Rules \ PortabilityRules. dll"
/ regra: "C: \ Arquivos de Programas \ Microsoft FxCop 1.35 \ Rules \ SecurityRules. dll"
/ regra: "C: \ Arquivos de Programas \ Microsoft FxCop 1.35 \ Rules \ UsageRules. dll"
/ diretório: "C: \ Arquivos de Programas \ Referência Assemblies \ Microsoft \ Framework \ v3.5 \ System. Core. dll"
No comando acima, os sinalizadores são:
/ regra Um caminho para a regra dll que você deseja incluir.
/ out Para qual arquivo a análise deve ser salva.
/ sumário Faz com que o FxCop inclua um resumo no relatório.
/ arquivo O arquivo que deseja analisar.
/ diretório Por algum motivo, o arquivo de projeto não pode lembrar onde o System. Core. dll está localizado. Para evitar erros você pode especificar a dll assim.
Quando você abre o aplicativo FxCop GUI, ele deve se parecer com o seguinte.
Quando você configurou o seu projeto FxCop, você pode analisar seu código. Isso é feito clicando em Projeto - & gt; Analise ou no botão Analisar. Agora, o FxCop analisará seu código e mostrará onde as regras estão quebradas. Um pop-up mostrará um relatório de resumo e as janelas principais irão listar todos os lugares em que uma regra está quebrada. Cada item na lista manterá informações sobre a regra, onde exatamente no código a violação é, e o que você deve fazer para corrigi-la.
/ projeto O arquivo do projeto que você acabou de criar.
% workpace% Uma variável sysmtem definida por jenkins. Isso aponta para o espaço de trabalho, onde você pode colocar seu arquivo de projeto FxCop.
As outras opções são explicadas acima.
Para obter mais informações, o GUI do MSDNs pode ser encontrado aqui.
Jenkins CI.
Em uma configuração de trabalho Jenkins você precisa adicionar uma etapa de construção do comando do Windows Batch e digite o comando que inicia o FxCopCmd com os parâmetros corretos.
Observe que se FxCopCmd encontrar violações, o trabalho Jenkins falhará ou será marcado como instável dependendo do número de violações e as configurações do plugin de violações.
O plug-in Violações mostrará apenas um gráfico após uma série de compilações bem-sucedidas.

Comments

Popular Posts