[delphi-br] @, ^, $IFDEF, etc

2005-08-08 Por tôpico José Luis Fernandes Rezende
Olá Pessoal,

Acompanho a Lista desde 15/10/2001, não lembro de ter visto qualquer
referência sobre o uso de caracteres especiais (@ ^ $) e chamadas #IFDEF,
etc...
Apredi a programar estudando os códigos disponibilizados por outros
programadores. Tenho diversos sistemas em funcionamento, porém, apesar de
usar estes caracteres (beseado em funções de terceiros) não sei qual a real
funcionalidade destes.
Gostaria que alguém exponha na lista o porquê de se usar tais caracteres em
determinadas situações. Acredito que tenham outros programadores que como eu
fazem uso de tais caracteres sem saber exatamente porque são necessários
para que determinada função funcione adequadamente.
Outra coisa, registrar um programa como serviço, estou usando a função
abaixo para isso:

...
implementation
function RegisterServiceProcess(dwProcessID, dwType: integer): Integer;
stdcall; external 'KERNEL32.DLL';
...

...
begin
 RegisterServiceProcess(GetCurrentProcessID, 1);
end
...

Porém, ela não funciona na plataforma NT. Tenho que compilar o meu programa
duas vezes, uma para plataforma 9x e outra para NT.

Alguém conhece uma maneira de contornar esta situação? (Uma função que seja
compatível com ambas plataformas Windows).

Obrigado pela atenção.

José Luis






___ 
Yahoo! Acesso Grátis - Internet rápida e grátis. 
Instale o discador agora! http://br.acesso.yahoo.com/


-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [delphi-br] @, ^, $IFDEF, etc

2005-08-08 Por tôpico FILIPE - GURU
*Diretivas:

{$IFDEF MSWINDOWS} Showmessage('Vc está usando windows!') {$ELSEIF LINUX}
Showmessage('Vc está usando Linux!') {$IFEND}

ou entaum, vc pode ir em {Project/Options/aba
Directories/Conditionals/Conditional Defines}

e colocar a diretiva do seu projeto...

Por exemplo, se vc coloca lah: MEUPROJETO e tem uma parte do código q soh o
seu projeto deve compilar, faça:

{$IFDEF MEUPROJETO} Showmessage('Estou no meu Projeto!') {$IFEND}
Showmessage('Estou em Qualquer projeto!')

tem IFDEF  = passa por ali e
IFNDEF = naum passa.

* @
Pega o endereço de memória da variável;

var
  p: Pointer
  Edit: TEdit;
begin
  Edit := Edit1;
  p := @Edit1;
end;


* ^
Para se usar com ponteiros;

var:
  Edit: ^TEdit; // Edit é um ponteiro para um TEdit, ^ na frente denomina
tipo
begin
  Edit := Edit1^; // pega o endereço de Edit1;
end;


flw


Filipe Geyer
Programador


(47) 8409 7352
[EMAIL PROTECTED]
- Original Message -
From: José Luis Fernandes Rezende [EMAIL PROTECTED]
To: delphi-br@yahoogrupos.com.br
Sent: Monday, August 08, 2005 9:30 AM
Subject: [delphi-br] @, ^, $IFDEF, etc


 Olá Pessoal,

 Acompanho a Lista desde 15/10/2001, não lembro de ter visto qualquer
 referência sobre o uso de caracteres especiais (@ ^ $) e chamadas #IFDEF,
 etc...
 Apredi a programar estudando os códigos disponibilizados por outros
 programadores. Tenho diversos sistemas em funcionamento, porém, apesar de
 usar estes caracteres (beseado em funções de terceiros) não sei qual a
real
 funcionalidade destes.
 Gostaria que alguém exponha na lista o porquê de se usar tais caracteres
em
 determinadas situações. Acredito que tenham outros programadores que como
eu
 fazem uso de tais caracteres sem saber exatamente porque são necessários
 para que determinada função funcione adequadamente.
 Outra coisa, registrar um programa como serviço, estou usando a função
 abaixo para isso:

 ...
 implementation
 function RegisterServiceProcess(dwProcessID, dwType: integer): Integer;
 stdcall; external 'KERNEL32.DLL';
 ...

 ...
 begin
  RegisterServiceProcess(GetCurrentProcessID, 1);
 end
 ...

 Porém, ela não funciona na plataforma NT. Tenho que compilar o meu
programa
 duas vezes, uma para plataforma 9x e outra para NT.

 Alguém conhece uma maneira de contornar esta situação? (Uma função que
seja
 compatível com ambas plataformas Windows).

 Obrigado pela atenção.

 José Luis






 ___
 Yahoo! Acesso Grátis - Internet rápida e grátis.
 Instale o discador agora! http://br.acesso.yahoo.com/


 --
  FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

 Para ver as mensagens antigas, acesse:
  http://br.groups.yahoo.com/group/delphi-br/messages

 Para falar com o moderador, envie um e-mail para:
  [EMAIL PROTECTED] ou [EMAIL PROTECTED]

 Links do Yahoo! Grupos













-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




[delphi-br] @, ^, $IFDEF, etc

2005-08-05 Por tôpico José Luis Fernandes Rezende
Olá Pessoal,

Acompanho a Lista desde 15/10/2001, não lembro de ter visto qualquer
referência sobre o uso de caracteres especiais (@ ^ $) e chamadas #IFDEF,
etc...
Apredi a programar estudando os códigos disponibilizados por outros
programadores. Tenho diversos sistemas em funcionamento, porém, apesar de
usar estes caracteres (beseado em funções de terceiros) não sei qual a real
funcionalidade destes.
Gostaria que alguém exponha na lista o porquê de se usar tais caracteres em
determinadas situações. Acredito que tenham outros programadores que como eu
fazem uso de tais caracteres sem saber exatamente porque são necessários
para que determinada função funcione adequadamente.
Outra coisa, registrar um programa como serviço, estou usando a função
abaixo para isso:

...
implementation
function RegisterServiceProcess(dwProcessID, dwType: integer): Integer;
stdcall; external 'KERNEL32.DLL';
...

...
begin
 RegisterServiceProcess(GetCurrentProcessID, 1);
end
...

Porém, ela não funciona na plataforma NT. Tenho que compilar o meu programa
duas vezes, uma para plataforma 9x e outra para NT.

Alguém conhece uma maneira de contornar esta situação? (Uma função que seja
compatível com ambas plataformas Windows).

Obrigado pela atenção.

José Luis






___ 
Yahoo! Acesso Grátis - Internet rápida e grátis. 
Instale o discador agora! http://br.acesso.yahoo.com/


-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html