Active News - Nº 45  - www.activedelphi.com.br 

             Terça-feira, 18 de junho de 2002

 

          Notícia da Edição : Falha no SQL Server 2000 abre o servidor

 

          Duas falhas no módulo SQLXML do SQL Server 2000 permitem que um invasor execute programas remotamente no servidor.

          A primeira vulnerabilidade permite que um atacante remoto execute códigos no servidor. A outra, que envolve o processamento de tags XML, dá ao atacante a condição de rodar scripts na máquina invadida. 
          Embora faça parte do SQL Server, o módulo SQLXML pode ser obtido em separado. Clique aqui para fazer o download das correções.

fonte : Info

 

       Não deixe de enviar sua dica de Programação Delphi para nós a publicarmos no ActiveNews, a equipe do ActiveDelphi e todos os assinantes ficarão agradecidos com a sua contribuição.
 
          1- Exibir bitmap em um ComboBox. Enviada por João Laudir laudir@netview.com.br 

 

  propriedade Style do ComboBox deve ser: csOwnerDrawVariable

  var
    Form1: TForm1;
    Bmp1, Bmp2, Bmp3: TBitmap;
    
  implementation

  {$R *.DFM}

  procedure TForm1.FormCreate(Sender: TObject);
  begin
    Bmp1:=TBitmap.Create;
    Bmp.Loadfromfile('c:\chip16.bmp');
    Bmp1:=TBitmap.Create;
    Bmp.Loadfromfile('c:\zoom.bmp');
    Bmp1:=TBitmap.Create;
    Bmp.Loadfromfile('c:\disk.bmp');
    ComboBox1.Items.AddObject('Chip',Bmp1);
    ComboBox1.Items.AddObject('Zoom',Bmp2);
    ComboBox1.Items.AddObject('Disk',Bmp3);
  end;

  procedure TForm1.ComboBox1DrawItem(Control: TWinControl; Index: Integer;  Rect: TRect; State: TOWnerDrawState);
  var
    Bitmap: TBitmap;
    Offset: Integer;
  begin
    with (Control as TComboBox).Canvas do 

    begin
      FillRect(Rect);
      Bitmap:= TBitmap(ComboBox1.Items.Objects[index]);
      if Bitmap<>nil then 

      begin
        BrushCopy(Bounds(Rect.Left + 2, Rect.Top + 2, Bitmap.Width,
        Bitmap.Height), Bitmap, Bounds(0, 0, Bitmap.Width, Bitmap.Height), clRed);
        Offset: Bitmap.width + 8;
      end;
      TextOut(Rect.Left + Offset, Rect.Top, ComboBox1.Items[index]);
    end;
  end;

  procedure TForm1.ComboBox1MeasureItem(Control: TWinControl; Index: Integer;  var Height: Integer);
  begin
    Height:=20;
  end;

 

     Seja um colaborador do ActiveDelphi. Saiba como...

-

          2- Como retornar o nome do host da conexão. Enviada por Celso Rodrigues celso@finta.com.br 

 

  Function GetHostName(strIPAddress : String) : String;  
  // Retorna o Host onde seu TCP/IP está conectado
  // Requer a Winsock declarada na clausula uses da unit
  Var
    strHost : String ;
    pszIPAddress : PChar ;
    pReturnedHostEnt : PHostEnt ;
    InternetAddr : u_long ;
    GInitData : TWSADATA ;
  Begin
    strHost := '';
    If WSAStartup($101, GInitData) = 0 then
    Begin
      pszIPAddress := StrAlloc( Length( strIPAddress ) + 1 ) ;
      StrPCopy( pszIPAddress, strIPAddress ) ;
      InternetAddr := Inet_Addr(pszIPAddress) ;
      StrDispose( pszIPAddress ) ;
      pReturnedHostEnt := GetHostByAddr( PChar(@InternetAddr),4, PF_INET );
      try
        strHost := pReturnedHostEnt^.h_name;
        WSACleanup;
        Result := strHost ;
      except
        Result := 'Host inválido ou não encontrado';
      end;
    end;
  end;

 

          Suporte em Delphi. cadastre-se já 

          Este serviço tem por finalidade oferecer aos associados um suporte técnico na linguagem de programação Delphi, nas versões Standard, Professional e Client/Server.   

          Atualmente, contamos com uma equipe de profissionais qualificados e prontos pra lhe atender e ajudá-lo da melhor forma possível.  

          Nosso atendimento é feito através de e-mail e formulário web, de segunda à sexta das 08:00h às 18:00h.

-
          3-  Como Capturar a data da BIOS ( Basic Input Output System ) do computador. Enviada por Celso Rodrigues celso@finta.com.br 

 

  procedure TForm1.Button1Click(Sender: TObject); 
  begin
    Label1.Caption := 'Data da Bios: '+String(PChar(Ptr($FFFF5))); 
  end; 

 

          Várias Apostilaswww.activedelphi.com.br/apostilas.htm
          4- Saltando campos com Enter. Enviada por Geferson Dietze gefed@bol.com.br 

 

   Coloque a propriedade KEYPREVIEW = true no formulário, e o seguinte código no ONKEYPRESS do mesmo.

  procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
  begin
    If Key = #13 then
    begin
      Perform(Wm_NextDlgCtl,0,0);
      Key := #0;
    end;
  end;

 

            Visite nosso Fórum de discussões sobre Delphi, é gratuito e não precisa se cadastrar. Clique Aqui
-
          5- Executa uma URL especificada com o InterNet Explorer.. Enviada por Celso Rodrigues celso@finta.com.br 

 

  // Declare ComObj na seção USES.
  // Exemplo ::: OpenInternetExplorer('http://www.activedelphi.com.br');

  procedure OpenInternetExplorer( sURL : string );
  const
    csOLEObjName = 'InternetExplorer.Application';
  var
    IE : Variant;WinHanlde : HWnd;
  begin
    if( VarIsEmpty( IE ) )then 
    begin
      IE := CreateOleObject( csOLEObjName );
      IE.Visible := true;
      IE.Navigate( sURL );
    end;
  end;

 

          Não deixe de enviar sua dica de Programação Delphi para nós a publicarmos no ActiveNews, a equipe do ActiveDelphi e   todos os assinantes ficarão agradecidos com a sua contribuição.  

-
          6- Separando o dia, mês e ano de uma data e retornando o mês em extenso .

 

  procedure TForm1.Edit1Exit(Sender: TObject);
  var
    Presente: TDateTime;
    ano , mes, dia : Word;
    mesextenso : String;
  begin
    Presente:= strtodate (Edit1.Text) ;
    DecodeDate(Presente, ano, mes, dia);
    case mes of
      01 : mesextenso := 'Janeiro';
      02 : mesextenso := 'Fevereiro';
      03 : mesextenso := 'Março';
      04 : mesextenso := 'Abril';
      05 : mesextenso := 'Maio';
      06 : mesextenso := 'Junho';
      07 : mesextenso := 'Julho';
      08 : mesextenso := 'Agosto';
      09 : mesextenso := 'Setembro';
      10 : mesextenso := 'Outubro';
      11 : mesextenso := 'Novembro';
      12 : mesextenso := 'Dezembro';
    else
      mesextenso := '';
    end;
  end;

 

          Suporte em Delphi. cadastre-se já 

          Este serviço tem por finalidade oferecer aos associados um suporte técnico na linguagem de programação Delphi, nas versões 1, 2, 3, 4 e 5 Standard, Professional e Client/Server.   

          Atualmente, contamos com uma equipe de profissionais qualificados e prontos pra lhe atender e ajudá-lo da melhor forma possível.  

          Nosso atendimento é feito através de e-mail e formulário web, de segunda à sexta das 08:00h às 18:00h.

-
          7- Essa dica é um tutorial online sobre TreeView. (inglês)

 

          http://users.iafrica.com/d/da/dart/Delphi/TTreeView/TreeView.html

 

-

          Pensamento:
          Tenha sempre firmeza em suas atitudes e persistência em seus ideais, mas seja paciente. Não queira que tudo lhe chegue de imediato. Há tempo pra todo propósito! E tudo que é seu virá às suas mãos no momento oportuno. Confie em você, saiba esperar... "A paciência é amarga, mas os frutos são doces".

 

-

          Repasse este News para seus amigos(as)...

 

          Na próxima semana teremos novidades. Aguarde !

 

          EQUIPE  ACTIVEDELPHI

          www.activedelphi.com.br

          info@activedelphi.com.br

 

 Este é um serviço gratuito oferecido pelo site www.activedelphi.com.br

 Para cancelar sua assinatura, basta responder esse e-mail, colocando no campo assunto "Cancelar".