Dicas de Delphi Win32

 

Obtendo informações dos campos da Tabela

Essa dica demonstra como obter informações dos campos de uma tabela, usando o componente TTable, funciona para todas as classes que derivam de TDataSet, sendo essas informações o nome, tipo e tamanho, coloque um Button no Form1, adicione essa código no evento OnClick do Button

 

var

  I: Integer;

  TipoCampo: string;

begin

  with Table1 do

  begin

    for I := 0 to Fields.Count -1 do

    begin

      TipoCampo := GetEnumName(TYpeInfo(TFieldType),

        Ord(Fields[I].DataType));

      ShowMessage(Concat('Nome: ', Fields[I].FieldName,

        ', Tipo: ', TipoCampo, ', Tamanho: ',

        IntToStr(Fields[I].Size)));

    end;

  end;

 

 

Obtendo os atributos de um determinado arquivo

Nessa dica veremos como obter os atributos de um determinado arquivo, somente leitura, arquivo, arquivo de sistema ou oculto, veja o código e a ilustração do exemplo em execução abaixo.

 

procedure TForm1.btnAtributosClick(Sender: TObject);

var

  Attributes: Word;

begin

  Attributes := FileGetAttr(edArquivo.Text);

  CheckBox1.Checked := (Attributes and faReadOnly) = faReadOnly;

  CheckBox2.Checked := (Attributes and faArchive) = faArchive;

  CheckBox3.Checked := (Attributes and faSysFile) = faSysFile;

  CheckBox4.Checked := (Attributes and faHidden) = faHidden;

end;

 

 

Figura 1.

Abrir os configuradores do Painel de Controle

Nessa dica demonstrarei como abrir a configuração do vídeo, do modem e do firewall, mas você poderá fazer alterações para abrir outras configurações como a de Teclado, veja código abaixo e a figura que ilustra o exemplo em execução.

 

procedure TForm1.btnVideoClick(Sender: TObject);

begin

  //Configuracao de Video

  WinExec('RunDLL32.exe Shell32.DLL, Control_RunDLL Desk.cpl', SW_Show);

end;

 

procedure TForm1.btnModemClick(Sender: TObject);

begin

  //Configuracao de Modem

  WinExec('RunDLL32.exe Shell32.DLL, Control_RunDLL Modem.cpl', SW_Show);

end;

 

procedure TForm1.btnFIrewallClick(Sender: TObject);

begin

  //Configuracao de Firewall

  WinExec('RunDLL32.exe Shell32.DLL, Control_RunDLL Firewall.cpl', SW_Show)

end;

 

Figura 2.