terça-feira, 10 de novembro de 2015

Identificar se o programa esta sendo executado dentro do Delphi

Para saber se o programa esta sendo executado dentro da IDE do Delphi, verifique se o valor da variavel DebugHook esta diferente de zero.


Ex:

Program P1;

uses
  Vcl.Forms;

begin
  Application.Initialize;
  ReportMemoryLeaksOnShutdown := DebugHook <> 0;
  Application.CreateForm(TFrm_Menu, Frm_Menu);
  Application.Run;
end.

quarta-feira, 28 de outubro de 2015

Extrair Metadata de um Banco Firebird

Hoje precisei extrair um metadata de um banco de dados firebird e não tinha o IBexpert instalado e não tinha como baixar, ai foi necessário usar o ISQL para fazer isso.

O comando para extrair o metadata de um banco firebird é o seguinte:

ISQL -extract -o [nome arquivo] [banco de dados] -user SYSDBA -password masterkey


Exemplo:
ISQL -extract -o metadata.sql 127.0.0.1:BANCO_TESTE -user SYSDBA -password masterkey



quarta-feira, 23 de setembro de 2015

Uso de Disco 100%

Para resolver o problema de uso de disco 100% no windows 8.1, execute os seguintes comandos no prompt do cmd como usuário administrador


Dism /Online /Cleanup-Image /ScanHealth

Dism /Online /Cleanup-Image /RestoreHealth



Origem: Retirado do Fórum DevMedia


sábado, 19 de setembro de 2015

Instalacao do PhoeneGap / Cordova

Procedimentos para instalação do PhoneGap/Cordova no Windows

1. Baixar o NodeJS no site https://nodejs.org/en/


2. Instalar o PhoneGap
    Entrar no prompt do dos e executar npm install -g phonegap


3. Instalar o Cordova
    Entrar no prompt do dos e executar npm install -g cordova

4.Instalar  o emulador GenyMotion atraves do site e instalar o programa
   https://www.genymotion.com/#!/download/freemium/windows/classical



sábado, 6 de junho de 2015

Gerar Guid em Delphi

Para gerar um UniqueId, ou seja um número que nunca repete, use a função abaixo. Ela foi retirada em um blog que não me recordo.

function GerarGuid: String;
Var
   G : TGuid;
begin
   CoCreateGuid(G);
   Result := IntToHex(G.D1,1) + '' + IntToHex(G.D2,1) + '' + IntToHex(G.D3,1) + '';
   Result := Result + IntToHex(G.D4[0],1)+IntToHex(G.D4[1],1)+IntToHex(G.D4[3],1)+IntToHex(G.D4[4],1)+IntToHex(G.D4[5],1)+IntToHex(G.D4[6],1)+IntToHex(G.D4[7],1);

end;


Não esquecer de definir as units  Windows, SysUtils, ComObj, Activex na seção interface.






quinta-feira, 28 de maio de 2015

Botões e Edits com bordas arredondas em Android

Para criar botões e campos de edição com bordas arredondadas no Android, devemos fazer o seguinte.
Primeiro precisamos criar o arquivo de layout do nosso exemplo que deverá chamar exemplo_tela.xml que ficará na pasta /res/layout:

‹?xml version="1.0" encoding="utf-8"? ›
‹LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:orientation="vertical" ›

‹TextView
     android:id="@+id/textView1"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:text="Nome" / ›

‹EditText
     android:id="@+id/editText1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginLeft="15dp"
    android:layout_marginRight="15dp"
    android:ems="10" ›
   ‹requestFocus / ›
‹/EditText ›

‹Button
    android:id="@+id/button1"
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content"
    android:layout_marginLeft="15dp"
    android:layout_marginRight="15dp"
    android:text="Pesquisar" / ›

‹/LinearLayout ›


Depois vamos criar o arquivo  responsável por realizar o efeito arredondado nos componentes que desejamos. O nome dele será  borda_arredondada.xml. Este arquivo deverá ficar na pasta  /res/drawable

‹shape xmlns:android="http://schemas.android.com/apk/res/android"    android:padding="10dp"
   android:shape="rectangle" ›

   ‹solid android:color="#8B008B" / ›

   ‹corners
       android:bottomLeftRadius="10dp"
       android:bottomRightRadius="10dp"
       android:topLeftRadius="10dp"
       android:topRightRadius="10dp" / ›

‹/shape ›

A tag shape  é usada para definir a forma que se quer aplicar no componente, no nosso exemplo definimos uma forma bem simples que foi rectangle.

A tag solid  é usada para definir as propriedades do componente como a cor de fundo, cor da fonte, etc.

A tag corners  é tag que define a propriedades do cantos do componente, é essa tag que irá de fato aplicar as bordas arredondadas.

Para aplicarmos de fato o efeito arredondado nos componentes que queremos basta adicionar o atributo background no componente que queremos, como mostra a linha verde marcada.

‹Button
    android:id="@+id/button1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_marginLeft="15dp"
    android:layout_marginRight="15dp"
   android:background="@drawable/borda_arredondada"  
    android:text="Pesquisar" / ›