Visitantes que leram esse artigo, também visitaram:
  • UPX – Ultimate Packer for Executables
  • Add-ons para o Firefox que a empresa (e você também) pode adotar


  • “About” Catalog 1.0

    Postado por Plinio Cruz em 22 de agosto de 2002 na categoria Delphi, Programação | Seja o primeiro a comentar

    1 Estrela2 Estrela3 Estrela4 Estrela5 Estrela (Sem votos, vote agora!)
    Loading ... Loading ...

    Há dez dias deixamos à disposição dos nossos visitantes o CATALOG 1.0. E, agora, atendendo a pedidos, disponibilizamos os fontes do programa. Sentimo-nos muito gratificados pelo reconhecimento demonstrado por nossos visitantes e para cumprir com o objetivo maior desse portal (que é de compartilhar o conhecimento), disponibilizamos os fontes, além de um breve comentário sobre suas principais funções para melhor orientar os interessados.

    Não tentamos reinventar a roda, mas programamos de forma a tornar mais fácil a retirada de suas principais funções e encaixá-las em qualquer outra aplicação que delas necessite.

    Então, vamos a elas:

     1 – Deletar arquivos enviando para a Lixeira do Windows.

    A rotina responsável por esse procedimento está escrita na íntegra logo abaixo:

    procedure ToRecycle(AHandle: THandle; const ADirName: String);

    var

      SHFileOpStruct: TSHFileOpStruct;

      DirName: PChar;

      BufferSize: Cardinal;

    begin

      BufferSize := Length(ADirName) +1 +1;

      GetMem(DirName, BufferSize);

      try

        FillChar(DirName^, BufferSize, 0);

        StrCopy(DirName, PChar(ADirName));

        with SHFileOpStruct do

        begin

          Wnd := AHandle;

          wFunc := FO_DELETE;

          pFrom := DirName;

          pTo := nil;

          fFlags := FOF_ALLOWUNDO;

          fAnyOperationsAborted := False;

          hNameMappings := nil;

          lpszProgressTitle := nil;

        end;

        if SHFileOperation(SHFileOpStruct) <> 0 then

          RaiseLastWin32Error;

      finally

        FreeMem(DirName, BufferSize);

      end;

    end;

    Essa função foi estruturada com base no Livro: Delphi 5 Guia do Desenvolvedor (Steve Teixeira e Xavier Pacheco). Nosso trabalho consistiu em isolá-la e entende-la para deixarmos como biblioteca a fim de que seja usada em desenvolvimentos futuros.

    Note que o que determina o envio do arquivo para a lixeira é que o wFunc que recebe FO_DELETE e o Flag FOF_ALLOWUNDO.

    2 – Determinar as unidades removíveis

    Na verdade esta função determina todas as unidades existentes no computador, mas para o objetivo do CATALOG apenas usamos as mídias removíveis.

    A rotina completa pode ser encontrada na Unit1 no procedimento de criação do form (TForm1FormCreate(Sender:Tobject)). Vamos, agora, ajudar você a aproveitar todo o potencial deste procedimento.

    A função varre toda letra possível de ser atribuída a uma unidade do computador. Fizemos a rotina sempre selecionar as mídias removíveis, pois a função GetDriveType(PChar(c)) dá um retorno para cada tipo.

    Para usar essa função para reconhecer outros tipos de unidade será preciso saber o que significa cada um de seus retornos. Acompanhe:

    0 – Não é possível determinar o tipo da unidade

    1 – Diretório raiz não existe

    DRIVE_REMOVABLE – Unidade é removível

    DRIVE_FIXED – Unidade não é removívels

    DRIVE_REMOTE – A Unidade é remota (de rede)

    DRIVE_CDROM – A unidade é de CD ou DVD ROM

    DRIVE_RAMDISK – A unidade é um disco em RAM

    3 – Busca de uma string em um Memo 

    Para fazer uma rotina de busca de string em um Memo foram combinados dois procedimentos (ambos poderão ser encontrados na Unit1).

    - TForm1.BitBtn3Click(Sender:TObject)

    - TForm1.FindDialog1Find(Sender:TObejct)

    Essa rotina é muito fácil de ser implementada: a única coisa que será preciso fazer para adapta-la a outro programa é mudar os parâmetros para varredura, que neste caso estão feitos somente para o diretório ativo.

    Já no segundo procedimento, o que faz a varredura propriamente dita (FindDialog1Find), não será necessário mudar nada.

    Para qualquer esclarecimento entre em contato com o Clube da Informática.

    Download do CATALOG 1.0 – CLIQUE AQUI!

    Download dos Fontes do CATALOG 1.0 – CLIQUE AQUI!

    Educação a Distância

    Deixe seu comentário