Pergunta

Esta é a minha primeira pergunta para stackoverflow então aqui vai ...

Eu uso o controle de cruzeiro para o meu esquema de integração contínua, eu quero usar ofuscação, a fim de adicionar outra camada de proteção às minhas montagens. A coisa é que eu não sei como fazê-lo desde que eu não poderia encontrar artigos que descrevem sobre isso. Sugestões que incluem outras ferramentas de IC, como NAnt também são aceitos.

ferramentas comerciais também são uma opção por isso não hesite em incluí-los em sua resposta. As aplicações que estou construindo e querem ofuscar são escritos principalmente em Compact Framework 2.0, Dot Net 2,0-3,5.

Nas verificações de controle de momento de cruzeiro para alterações no repositório, em seguida, baseado no roteiro para os downloads de soluções específicas e constrói o projeto usando devenv, após o projeto de instalação foi executado que copia o arquivo de instalação em uma pasta diferente e isso é mais ou menos isso. Então eu preciso de algum lugar Ofuscação neste processo ..

Foi útil?

Solução

@ konstantinos.konstantinidis.myopenid.com: o seu problema parece ser com o projeto de instalação não o servidor de integração contínua.

Você tem o projeto de instalação pegando as principais saídas para o projeto.

Alterar-lo para usar referências de arquivo para as saídas. É um pouco de configuração mais no projeto de instalação, mas eu acho que você ainda pode alcançar a mesma funcionalidade.

Dessa forma, você pode pegar suas montagens ofuscados a partir de qualquer diretório provisório sua ferramenta de ofuscação é despejá-los em.

Outras dicas

Nice ouvir alguém está usando CruiseControl.NET. Essa é uma boa ferramenta. Você pode usar uma ferramenta de linha de comando para ofuscação como RemoteSoft .NET Obfuscator e integrar uma chamada para a ferramenta no script de construção. Veja o exemplo de como executar um arquivo abaixo de CruiseControl.NET wiki.

http://www.remotesoft.com/salamander/obfuscator.html

<exec>
    <executable>make</executable>
    <baseDirectory>D:\dev\MyProject</baseDirectory>
    <buildArgs>all</buildArgs>
    <buildTimeoutSeconds>10</buildTimeoutSeconds>
    <successExitCodes>0,1,3,5</successExitCodes>
    <environment>
        <variable>
            <name>MyVar1</name>
            <value>Var1Value</value>
        </variable>
        <variable name="MyVar2" value="Var2Value"/>
        ...
    </environment>
</exec>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top