Como saber se um aplicativo .NET é 32 ou 64 bits

No desenvolvimento de aplicações .NET seja ela, ASP.NET, ASP.NET MVC, Windows Library, Windows Form é possível utilizamos algumas diversas linguagens para programação. Porem é possível também definir que nosso executável ou assembly rode em plataforma 32 bits, 64 bits ou para ambas as plataformas (Any CPU).

Mais imagina-se a seguinte situação, um pouco absurda, mais possível de se ocorrer. Você é um implantador de sistemas e deverá atender a uma demanda em um cliente. Implantar o sistema e se depara com um erro ao executar o sistema que acabou de instalar com a seguinte mensagem:


System.BadImageFormatException: Could not load file or assembly '<assembly>' or one of it dependencies. An attempt was made to load programa with an incorrect format.

Alguns outros Exceptions poderão ser vistos aqui nesse artigo sobre Exceptions do .NET Framework

Esse erro ocorrer porque um assembly necessário não foi encontrado na tentativa de executar o sistema. Mais analisando o sistema, é identificado que o assembly se encontra junto ao projeto. Isso ocorre porque o assembly que tentou-se carregar está em uma plataforma diferente do sistema.

Leia mais… »

Introdução ao Hacking e aos Testes de Invasão – Editora Novatec

Introdução ao Hacking e aos Testes de Invasão

Introdução ao Hacking e aos Testes de Invasão é um livro publicado pela Editora Novatec do autor Patrick Engebretson. Patrick Engebretson é doutor em Ciências com especialização em Segurança da Informação pela Dakota State University, professor assistente de segurança de computador e redes e trabalha como Pentester Sênior em uma empresa de segurança.

Mais o que vem a ser o teste de invasão e porque nós do C# Brasil estamos abordando esse assunto?

A resposta é simples.

O teste de invasão é uma forma legal e autorizada de localizar e explorar sistemas de computadores possibilitando encontrar vulnerabilidades. Como o C# Brasil trata de assuntos relacionados ao desenvolvimento, nada mais justo que abordarmos também o quesito segurança, algo tão importante no desenvolvimento de software que muitas vezes passa despercebido.

No livro, o Doutor Patrick abordar ferramentas como o Nmap, Nessus, Netcat, a criação de laboratório de teste e a realização dos testes propriamente dito.

Leia mais… »

Aprenda UML por Meio de Estudos de Caso – Editora Novatec

Aprenda UML por Meio de Estudos de Caso

Aprenda UML por Meio de Estudos de Caso é um livro publicado pela Editora Novatec do autor Wilson Moraes Góes. Esse é um livro que aborda de forma simples e objetiva os estudo da UML por meio de estudos de caso.

De que forma você inicia o desenvolvimento de um projeto? Na maioria dos casos o projeto simplesmente é iniciado sem uma documentação e sem um planejamento. Nos como bons programadores sabemos da importância da utilização da UML para especificação de sistemas orientados a objeto. Ele permite aos envolvidos em um projeto de software a realização da modelagem dos processos.

A UML versão 2.0 é dividida em 3 categorias:

  • Diagrama de estrutura
  • Diagrama de comportamento
  • Diagrama de interação

Além de abordar com detalhes o autor ainda utiliza de estudos de casos, exercícios, exemplos práticos e aprofundado acerca de todos os diagramas:

Leia mais… »

Introdução ao Web Hacking – Editora Novatec

Livro Introdução Web Hacking

Com o grande avança que vem ocorrendo com a tecnologia, aumenta-se a preocupação com a segurança das informações. Um simples acesso a um portal, uma rede social ou até mesmo ao seu webmail, tem seu grau de perigo. Por isso muitas empresas tem investido alto em segurança para garantir a disponibilidade do seu serviço. Diariamente, servidores são invadidos, sites são desfigurados por conta da falha na segurança.

Mais você já ouviu falar ou sabe o que vem a ser web hacking? São técnica e métodos utilizados para invasão e exploração de falhas em aplicações web utilizando-se de ferramentas ou não.

Você que tem uma aplicação web, já se perguntou se ela é realmente segura? Se você não sabe a respostas, pode ser que alguém já saiba lhe responder. Isso porque talvez vulnerabilidades presentes nela já tenha sido explorada através de web hacking.

O livro Introdução ao Web Hacking do autor Josh Pauli, recém lançado pela Editora Novatec abordará assuntos como hacking de servidor web, hacking de aplicação web e hacking de usuários web além de lhe guiar na prática permitindo que utilize de ferramentas como Burp Suite, sqlmap, Zed Attack Proxy, Nmap, web shells, netcats, Metasploit, Nessus, Social-Engineer Tookit (SET) e outros para explorar vulnerabilidades.

Leia mais… »

Qual a diferença entre Int.Parse e Convert.ToInt32?

Tenho encontrado algumas confusões com isso, então vamos exclarecer.
int.Parse é utilizado somente para converter string em int disparando uma Exception se o valor convertido for null, “”(string vazia) ou qualquer caractere não numérico.


int x = int.Parse("123"); // 123
int x = int.Parse(""); // System.FormatException
int x = int.Parse("123@"); // System.FormatException
int x = int.Parse(null); // System.ArgumentNullException

Leia mais… »

Gerar arquivo PDF a partir de código HTML

Existem inúmeras ferramentas para gerar arquivos PDF como .Net, mas poucas delas são confiáveis, e quando são, o valor para utiliza-las é um tanto elevado.

A ferramenta mais utilizada para gerar arquivos PDF é o iTextSharp, que é fácil de implementar, traz inúmeras opções ao desenvolvedor e é totalmente gratuita. Mas para gerar arquivo PDF a partir de um arquivo ou código HTML não é muito simples, tornando o processo muito “braçal”.

Leia mais… »

Microsoft Virtual Academy

Para quem ainda não conhece existe um local muito bom para você que está começando a estudar a plataforma .NET ou quer aprender mais sobre as diversas tenologias Microsoft é o Microsoft Virtual Academy, segue abaixo algumas descrições retiradas do site do MVA sobre o que é o programa:

“Aprimore seu conjunto de habilidades de TI e progrida em sua carreira com um portal de treinamento gratuito e de fácil acesso. Aprenda em seu próprio ritmo, focalizando tecnologias da Microsoft, ganhe pontos e seja reconhecido.”
Leia mais… »

Boas práticas para geração de URLs

Nos últimos anos o projeto de URL das aplicações se tornou um assunto cada vez mais serio, e alguns princípios de design surgiram, se você seguir esses padrões, você ira melhorar a usabilidade, compatibilidade e os rankings da sua aplicação nos motores de busca.

• Crie URLs para descrever o conteúdo, não os detalhes da implementação de sua aplicação. Use /Artigos/RelatorioAnual ao invéz de /Website_v3/CachedContentServer/FromCache/RelatorioAnual
Leia mais… »

Padrões de codificação

Acredito que para escrever software confiável e de fácil manutenção, você deve seguir padrões de codificação e boas práticas, principalmente se trabalha com projetos que envolvem uma equipe, onde é muito importante que todos escrevam código de fácil leitura e manutenção, pois qualquer um pode escrever código. Com poucos meses de experiência em programação você pode escrever “aplicativos”, mas escrever software pelo caminho certo requer mais trabalho que apenas fazê-lo funcionar, afinal até um código ruim funciona.
Leia mais… »

Verificando DBNull de forma mais “elegante” com extension methods e generics

Em um banco de dados relacional um valor nulo é usado em uma coluna quando o valor é desconhecido ou ausente. Um nulo não é uma string vazia (para tipos de dados string ou datetime), nem um valor zero (para tipos de dados numéricos). (MSDN)

Em alguns códigos que utilizam DataReader para leitura dos dados eu costumo encontrar verificações se o valor retornado da base de dados não é nulo como o código a seguir:
Leia mais… »

Como alterar uma classe Css via C#

Olá caro leitor!

Quando se trata de CSS, muitos desenvolvedores sofrem por não terem muita prática e criativadade com manipulação de design.

A alteração de uma classe de css pode ser feita atraves do código c# e é um procedimento muito simples.
Primeiramente em uma pagina aspx,temos o seguinte código css:

Leia mais… »

Algumas regras para o uso eficaz de CSS no ASP.NET Web Forms

Tornar-se compatível com os padrões web ao usar CSS com ASP.NET Web Forms nem sempre é uma tarefa facil, segue abaixo uma serie de dicas que podem ajudar no caminho.

1. Prefira CSS ao invés de ASP.NET Skins.

  • CSS é um padrão bem aceito
  • Designers entendem CSS mas não conseguem entender o mecanismo de propriedades do ASP.NET
  • Skins levam a “Classitis”. Cada skin cria um atributo de classe HTML que tem seus estilos associados. Isso não segue o principio da reutilização.
  • Uma boa implementação de CSS externo um tamanho menor e um download mais rápido do que sua implementação equivalente com skins.
  • A própria Microsoft investiu em ferramentas de design CSS (o Expression Web e a inclusão do motor do Expression Web apartir da versão 2008 do Visual Studio) e realmente não fazem mais nada com skins. Então siga seu exemplo. CSS esta tendo um melhor suporte pelas ferramentas Microsoft.

Leia mais… »

Definindo o valor de um TextBox configurado para password em ASP.NET

Quando a propriedade TextMode de um TextBox é definida como password a propriedade Text não será exibida em tempo de execução, esse comportamento é uma forma de manter a segurança impedindo que a mesma seja visualizada pelo HTML da pagina.

Porem em alguns casos é necessário exibir o valor com sua respectiva mascara no TextBox. Por exemplo, uma pagina que exibe o perfil do usuário, onde o usuário tem a capacidade de alterar sua senha faz sentido exibi-la no TextBox. Afinal o usuário já deverá estar autenticado para acessar a pagina do seu perfil (embora o valor será enviado para o navegador e poderia ser facilmente interceptado por algum sniffer).

Leia mais… »

Alterando o idioma do Visual Studio 2010 para Português

No artigo de hoje vou explicar como alterar o idioma do Visual Studio 2010.

Essa dica é útil para quem tem dificuldade com o Inglês e gostaria de utilizar o Visual Studio 2010 em português.

O Microsoft disponibilizou para nós o Microsoft Visual studio 2010 Language Pack e é com ele que iremos alterar o idioma de nossa IDE. Vamos ao trabalho.

Leia mais… »