Convertendo vídeos usando o FFMPEG

A dica  deste post é para quem quer converter vídeos e áudios em seus aplicativos web, o que antes era uma tarefa quase impossível de se realizar, devido ao fato de existirem poucos programas gráficos que realizem tal tarefa.  Agora está disponível o FFMPEG.

Aqui estão alguns links:

FFMPEG with ASP.NET

http://www.ffmpeg.org/ (site oficial)

Eu estou testando e por enquanto a funcionalidade é ótima.

Microsoft .NET Framework

Olá pessoal, neste artigo falarei sobre as principais informações sobre Framework. Quando desenvolvemos um software em Delphi ou em Visual Basic 6, estamos criando este software diretamente para Sistemas Operacionais Windows sobre a plataforma Intel. Já quando desenvolvemos para o .NET, o sistema não dependerá do dispositivo ou plataforma, pois só necessitará ter instalado o .NET Framework que fica responsável em fornecer um ambiente da execução de código que minimiza conflitos de implantação, além de um ambiente de execução que reduz a zero os problemas de desempenho dos ambientes interpretados ou com scipts. O Framework permite também fornecer um ambiente de programação orientada a objetos consistente tanto se o código objeto for armazenado e executado localmente quanto se este for distribuído pela Internet ou executado remotamente. É válido lembrar que o framework permite que o desenvolvedor crie diversos tipos de aplicativos sejam eles baseados em Windows ou na WEB.

Existem dezenas de linguagens para criarmos nosso sistema .NET, podendo ser o VB.NET ( versão orientada á objetos do clássico Visual Basic) e o C# que herdou a sintaxe do C++. Estas citadas foram desenvolvidas pela Microsoft, mas há também outras desenvolvidas por outras empresas (Ex: COBOL, Delphi) . Mas a escolha da linguagem é apenas uma questão de sintaxe. Não importa qual a linguagem que você codificou, o resultado, em termos de performance e qualidade será o mesmo. Tudo isso porque um programa desenvolvido em .NET é compilado em uma linguagem intermediária chamada MSIL ( Microsoft Intermediate Language).

O MSIL, é muitas vezes é chamado de “mágica da Microsoft”, pois faz com que os programas sejam multiplataformas, seguro, versionados, etc. Mas o MSIL, nada mais é que uma linguagem intermediaria gerada no processo de compilação do código fonte, assim ao final desse processo temos um código intermediário e dependente do runtime do Framework ao invés dos executáveis “independentes”, até então gerado pelos compiladores.

Na primeira compilação do programa, entra em cena o JIT ( Just in Time Compiler) que é responsável por fazer uma nova compilação do programa, mas de acordo com as especificações do sistema operacional e do dispositivo que o .NET Framework se encontra.

Desenvolver um sistema para a plataforma .NET, traz mas algumas vantagens além das que já foram citadas acima, mas a mais importante é que o aplicativo criado irá rodar em um ambiente protegido e específico, sem ter que preocupar-se com especificações ou problemas do Sistema Operacional, pois toda a interação com este (como por exemplo o gerenciamento de memória) é feita pelo .NET através do CLR (Common language Runtime), que orienta o código no tempo de execução, principalmente o gerenciamento de código. Além do CLR há um componente muito importante do .NET Framework, a biblioteca de classes, que é uma coleção orientada a objeto extensa de tipos que podem ser utilizados no desenvolvimento dos aplicativos.

Fontes:

http://msdn.microsoft.com

ASP.NET 3.5 em VB e C# por Fernando Amaral

Validações

Olá pessoal, meu objetivo deste post é falar um pouco sobre alguns Validators do VS. Primeiramente os Validators são componentes do Visual Studio que facilitam a validação das informações que um usuário digita em uma página WEB. Por exemplo, quando em um formulário você deseja definir alguns campos como obrigatório, validar e-mail, tratamento de datas válidas, etc.

Vou explicar mais detalhadamente como e quando utilizar os controles RequiredFieldValidator, RangeValidator, RegularExpressionVelidator, CompareValidator, CustomValidator e ValidationSummary que se encontram na Toolbox.

Imagem 1

 O RequiredFieldValidator é o componente que verificará se o campo configurado está preenchido, para isso, você deve arrastá-lo para seu formulário em frente ao campo que será validado:

Imagem 2

 

E então configurar suas propriedades:

Imagem 3

 Na propriedade ErrorMessage, você colocará a mensagem que será exibida ao usuário e na propriedade ControlToValidate , a propriedade mais importante onde você definirá o nome do controle que será validado, no nosso caso  txtcidade. Essas são as principais propriedades a serem configuradas do RequiredFieldValidator. 

O próximo controle é o RangeValidator, ele dá a possibilidade de se validar valores entre um intervalo configurado.Neste exemplo vamos avaliar uma idade, se ela está entre 18 à 120 anos.

Começamos arrastando o controle para o formulário:

Imagem 4

 E alterando as seguintes propriedades:

 Imagem 5

Na propriedade ControlToValidate você colocará o Controle que será utilizado, no nosso caso txtIdade, escolheremos a mensagem a ser exibida no ErrorMessage, o valor máximo a ser comparado será colocado em MaximumValue,o valor mínimo em MinimumValue e o Type, que no nosso caso como estamos tratando de números inteiros, escolheremos Integer. 

Agora vamos ver o Controle RegularExpressionValidator, que faz a validação de email, url, além dos RegularExpressions que podem ser personalizados.

Arrastando o controle para o Formulário

Imagem 6

 E agora configurando suas propriedades:

 Imagem 7

Imagem 8

Colocamos a mensagem que será exibida ao usuário em ErrorMessage, na propriedade ControlToValidate escolhemos o campo que será validado, e em ValidationExpression iremos escolher qual RegularExpression que iremos usar, no nosso caso Internet e-mail address para validação do email e Internet URL para validação do Site. Para saber mais sobre como trabalhar com RegularExpressions customizadas acesse http://regexlib.com/default.aspx

O CompareValidator é um controle que permite estar comparando datas, campos, etc. Neste exemplo vou comparar dois campos – Senha e Confirmação de Senha. Para isso arrasto o controle CompareValidator no formulário:

Imagem 9

 E então vou configurar as propriedades:

Imagem 10

Na propriedade ErrorMessage será colocada a mensagem que será exibida ao usuário, na propriedade ControlToCompare será colocado o nome do controle que será comparado, no nosso caso o txtConfirmacaoSenha, no ControlToValidate será colocado o controle que servirá para comparação, no nosso caso o txtSenha, para definirmos que queremos que os campos sejam iguais, escolhemos o Operator como Equals e o Type será do tipo String pois podemos digitar números ou letras.

Utilizamos também o CompareValidator para validarmos uma data, basta você arrastar o controle para o formulário, e configurá-lo da seguinte maneira:

 Imagem 11

Na propriedade ControlToValidate colocaremos o campo que será validado, no nosso caso o txtAniversario,  o ErrorMessage será “Data Inválida”, a propriedade Operator será definida como DataTypeCheck e a propriedade Type será do tipo Date.

Agora  vou falar sobre o CustomValidator, este é um dos componentes de validação que podem ser personalizado. O exemplo a seguir verificará se o número digitado é divisível por 5.

Arrastando o Controle para a página:

Imagem 12

 E agora configurando suas propriedades:

Imagem 13

 

Configuro o ControlToValidate com o textbox que será validado, e o ErrorMessage com a mensagem que será exibida ao usuário.

Agora iremos criar uma função customizada para validar os número divisíveis por 5.

Imagem 14

Na linha 27 foi criado uma variável inteira que recebe o argumento, e na linha seguinte eu tenho o args.IsValid que pega o numero que foi digitado e divide por 5, se o resto for igual a 0 o Argumento é válido, então este numero é divisível por 5. Caso o usuário informe uma letra ao invés de um número e criado uma exceção.

Agora vamos associar esta função no HTML da página.

Imagem 15

Na linha 17 iremos mostrar que nossa validação será feita no servidor para isso usaremos o  comando OnServerValidate que indicará nossa função ValidaNumero. Lembrando também essa chamada pode ser feita com JavaScript mas utilizando o Comando ClientValidationFunction para chamar a função.

Agora por último vamos falar do ValidationSummary, tem como função exibir uma mensagem personalizada através de uma MessageBox contendo todas as validações.

Arrastando o Controle para o Form:

Imagem 16

 E configurando suas propriedades:

 Imagem 17

Na propriedade ShowMessageBox, você configura se quer exibir uma MessageBox, e no ShowSummary, você configura se quer exibir o resumo das validações:

Imagem 18

 

 

Themes em ASP.net

Pessoal, estava conferindo o blog do Felipe Oriani e li um artigo muito bom, que vale a pena compartilhar com vocês.  Ele usa uma linguagem simples para explicar a facilidade que os Themes podem nos trazer.

O link é:

http://www.felipeoriani.com.br/Blog/post/2009/08/19/Themes-em-ASPNet-(Parte-1).aspx

até mais!

MASTER PAGE

O QUE É UMA MASTER PAGE?

Uma Master Page pode ser considerada uma página padrão, um template, ou simplismente um modelo de pagina para seu web site, nela você pode criar modelos e incluir componentes (menu, cabeçalho, rodapé, etc) e estes serão padrões e visíveis em todo o website.
Quando se cria uma master page, podemos dizer para as paginas aspx herdarem todos os componentes e recursos desta master Page.O processo de herança de uma página e uma Master Page é feita em tempo de execução, o que facilita o processo de manutenção do WebSite, pois se você precisar alterar algum controle que está em todas as páginas, basta você alterar este controle na Master Page e todas as páginas que herdam dela serão alteradas automaticamente.

EXEMPLO PRÁTICO

Primeiramente criando um projeto, e nele adicionando um novo item:
Primeiramente criando um projeto, e nele adicionando um novo item
Escolha o Tipo MasterPage, escolha o nome que deseja e clique em ADD.
Escolha o Tipo MasterPage, escolha o nome que deseja e clique em ADD.

 

Para criarmos um design rápido vamos inserir uma tabela no modo Design da MasterPage:
Para criarmos um design rápido vamos inserir uma tabela no modo Design da MasterPage
E então escolher um modelo de Template
E então escolher um modelo de Template

 Agora vamos arrastar o ContentPlaceHolder para a área principal que será alterada na maste Page, este objeto é a área que é definida para o desenvolvedor trabalhar e inserir novos objetos, pois o restante só será alterado na MasterPage, isso para manter o padrão do nosso projeto.

Foto 5

Agora podemos modificar o layout conforme desejamos, neste caso vou inserir mais uma linha em nossa tabelas para colocarmos um menu, colocarei uma imagem com o topo e uma imagem representando o menu lateral:

Foto 6
Foto 7
Agora, vamos fazer com que esta página seja utilizada pelas páginas aspx. Primeiramente vamos adicionar um novo item, neste caso um web form, marque o checkbox Select master Page para que a pagina aspx herde os componentes da página padrão, após isso clique em Add.

Foto 8

Após isso, selecione sua master Page e clique em OK.
Imagem 9
 Automaticamente nossa pagina é criada no nosso Soluction Explorer, e em nosso HTML temos um código simples com @Page que identifica nossa página e uma diretiva chamada master Page file, que nos fornece o caminho da nossa página padrão:
Imagem 10
 Agora no modo Design iremos inserir controles que desejamos, qualquer objeto que desejamos, neste caso vou inserir dois textboxes e um buton.
Imagem 11
Agora basta executar o projeto para verificar o conteúdo da páginas aspx que acabamos de fazer com o design herdado da masterpage.
Certamente as vantagens de se usar este recurso são bem claras, por exemplo, manter um padrão de template para todo o projeto, além desta página estar fixa para todos os desenvolvedores, que só poderá trabalhar no ContentPlaceHolder, adicionando todos os objetos, códigos e informações que necessita, não influênciando em nada a Master Page. Todas as alterações que serão feitas feita, independente do tamanho do projeto, não precisará ser alterada página por página, basta alterar a MasterPage, pois automaticamente todas as páginas aspx que herdarão este template em tempo de execução.
Portanto sem dúvida alguma o recurso de Master Page facilita a produtividade e manutenção das aplicações, além de prover um padrão todo o projeto.

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

Join 155 other followers