![]() |
|
||||
![]() Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Você está aqui: C# ::: Dicas & Truques ::: WMI (Windows Management Instrumentation) |
||||||||||||||||
O que é WMI (Windows Management Instrumentation) e como usar esta infraestrutura em seus programas C#Quantidade de visualizações: 13958 vezes |
||||||||||||||||
O WMI (Windows Management Instrumentation) é a infraestrutura para o gerenciamento de dados e operações em sistemas baseados no Windows. Por meio do WMI nós podemos obter várias informações a respeito de todo o hardware no sistema, incluindo: a) Número de série, tamanho (capacidade) e espaço livre em drives; b) Número de série, velocidade de clock e tipo de soquete da CPU; c) Endereço MAC do adaptador de rede (Network Adapter MAC Address); d) Gateway padrão do adaptador de rede (Network Adapter Default Gateway); e) Muitas outras informações úteis para o desenvolvimento de programas que investigam ou atualizam informações relacionados a harware. O WMI foi projetado para programadores que usam C/C++, o Microsoft Visual Basic ou uma linguagem de script que tenha um motor (engine) no Windows e que nos permita lidar com objetos Microsoft ActiveX. Nesta dica mostrarei como podemos usar WMI a partir de aplicações C#. As informações contidas nas várias classes do WMI podem ser obtidas com o uso do WQL (SQL for WMI). Esta é a WMI Query Language, um sub-conjunto do American National Standards Institute Structured Query Language (ANSI SQL) ? com algumas diferenças semânticas. A classe WMI que abordarei nesta dica é a Win32_LogicalDisk. Esta classe representa uma fonte de dados que é um apelido para um dispositivo de armazenagem local em um computador usando Windows. Por meio desta classe podemos obter informações interessantes, tais como o número serial do HD, o espaço inicial, o espaço disponível, tipo do drive, etc. O primeiro procedimento que vamos realizar é a obtenção do número de série do HD. Veja:
Antes de executar este exemplo verifique se você realmente adicionou a referência System.Management ao seu projeto. Note que a linha: MessageBox.Show(disk.GetPropertyValue("VolumeSerialNumber").ToString()); pode ser substituída por: MessageBox.Show(disk["VolumeSerialNumber"].ToString()); Para verificar se o código C# realmente retornou o número de série correto, abra uma janela de comando e dispare:
Você terá um resultado parecido com:
Para obtermos o nome do volume só precisamos fazer uma pequena modificação no código. Veja:
|
||||||||||||||||
![]() |
||||||||||||||||
C# ::: Namespace System.Drawing ::: Image |
||||||||
Como usar o método FromFile() da classe Image do C# para criar um objeto desta classe a partir de um arquivo de imagem JPG, GIF, PNG, BMP, etcQuantidade de visualizações: 7248 vezes |
||||||||
Em algumas situações precisamos criar um objeto Image a partir de um arquivo de imagem JPG, GIF, PNG, BMP, etc. Isso pode ser feito por meio do método estático FromFile() da classe Image. Veja sua assinatura:public static Image FromFile(string filename) Veja um trecho de código no qual usamos o método FromFile() para criar um objeto Image a partir de uma imagem JPG em um determinado diretório. Em seguida usamos a Image construída para exibir a imagem em um PictureBox:
É importante observar que o método FromFile() pode disparar as seguintes exceções: a) OutOfMemoryException - O arquivo não contém um formato de imagem válido ou o GDI+ não suporta o formato de pixel para o arquivo. b) FileNotFoundException - O arquivo de imagem indicado não existe. Assim, é sempre uma boa idéia colocar o código acima em um bloco try..catch. Veja como isso pode ser feito:
Há uma sobrecarga do método FromFile() com a seguinte assinatura: public static Image FromFile(string filename, bool useEmbeddedColorManagement) | ||||||||
C# ::: Dicas & Truques ::: Rotinas de Conversão |
||||
Como converter um tipo string para um tipo decimal em C# usando o método Parse() da classe DecimalQuantidade de visualizações: 12579 vezes |
||||
Este exemplo mostra como converter uma string em um valor do tipo decimal. Para isso nós vamos usar o método Parse() da classe Decimal da linguagem C#. No entanto, é preciso termos cuidado, pois este método pode lançar três tipos de exceções: ArgumentNullException, FormatException e OverflowException. Veja o trecho de código a seguir:
Ao executar este código C# nós teremos o seguinte resultado: Valor convertido com sucesso: 530,54 Se tentarmos atribuir um valor string a um tipo decimal, sem efetuar a conversão, teremos o seguinte erro de compilação: Cannot implicitly convert type string to decimal | ||||
C# ::: Dicas & Truques ::: Arquivos e Diretórios |
||||
Como usar a classe FileSystemWatcher em seus programas C#Quantidade de visualizações: 8708 vezes |
||||
Podemos usar objetos da classe FileSystemWatcher quando queremos monitorar mudanças em um determinado diretório do sistema. Estas alterações podem ser observadas em arquivos e subdiretórios do diretório especificado. Usando objetos desta classe nós podemos monitorar modificações em arquivos no computador local, em um drive na rede ou em um computador remoto. Veja a posição desta classe na hierarquia de classes da plataforma .NET: System.Object System.MarshalByRefObject System.ComponentModel.Component System.IO.FileSystemWatcher Para adicionar um componente FileSystemWatcher em sua aplicação C# basta localizá-lo na seção Components da Toolbox. Em seguida clique no mesmo e arraste-o para o formulário. Para definir o diretório a ser monitorado, clique no componente, acesse suas propriedades e defina o caminho do diretório na propriedade Path. Um exemplo de diretório poderia ser "C:\arquivo de codigos". Neste exemplo veremos como detectar alterações nos arquivos e sub-diretórios. Desta forma, vá nos eventos do componente FileSystemWatcher e insira o código abaixo para o evento Changed:
Execute a aplicação e experimente criar um arquivo txt no diretório "C:\arquivo de códigos" e modificar seu conteúdo várias vezes. Volte à aplicação e a caixa de texto terá um conteúdo parecido com: Arquivo: C:\arquivo de codigos\dados2.txt sofreu alterações: Changed Arquivo: C:\arquivo de codigos\dados2.txt sofreu alterações: Changed | ||||
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
Dicas e truques de outras linguagens |
Java - Java Swing - Como criar sua primeira JTree usando um vetor de nomes de linguagens de programação |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |