Recuperar as Variáveis do Projeto

Delphi

16/09/2005

Pessoal,

gostaria de saber como posso pegar todas as variaveis do sistema ou do form atual, por exemplo, quando estou debugando e faço Ctrl+Clique em algum Form, o Delphi exibe todas as suas variaveis e seus respectivos conteudos.
Eu preciso de algo similar para recuperar o conteudo de determinada variavel.

Desde já obrigado.


Marvinla

Marvinla

Curtidas 0

Respostas

Marvinla

Marvinla

16/09/2005

Pessoal,

consegui em partes o que eu queria. Uma das coisas que eu precisava era recuperar o valor de uma variavel pelo seu nome. Consegui isso atravez da procedure GetPropValue, com ela eu consigo recuperar o valor de uma variavel ´indiretamente´, atravez de um propriedade declarada no Published, atravez de uma string com seu nome.

outra coisa é executar uma procedure / função atravez de uma string com seu nome.
Eis o link que esclareceu minha dúvida:

http://jansfreeware.com/articles/delphi-call-by-name.html

porém, eu gostaria de saber dinamicamente os parametros da minha procedure. Pelo que vi o caminho é a RTTI (Runtime Type Information), porém não estou conseguindo recuperar os metodos. Se alguem tiver alguma dica, eu agradeço.

Obrigado, Marcos

Sobe...


GOSTEI 0
Massuda

Massuda

16/09/2005

Desculpe perguntar :oops:

Acho estranho quando alguém diz que precisa determinar o valor de uma variável ou executar uma procedure/function a partir do nome dela que está em uma string ou num campo numa tabela em BD. Apenas queria entender como você está usando isso. Será que dava para explicar como você está usando isso?


GOSTEI 0
Marvinla

Marvinla

16/09/2005

Seguinte Massuda,

é a velha historia do Macroprocessamento do Clipper. Hoje, temos uma tabela onde se configura notas fiscais por exemplo.
Nela há comandos do tipo:

cNomCid + (cadcid -> Estado) + chr(13), o que resulta na variavel cNomCid concatenada com o campo Estado da tabela cadcid e um enter. Lógico isso é um exemplo bobo. No macroprocessamento vc pode executar funções que vc criou, qualquer coisa.

Mas todos ja sabemos que o Delphi não tem isso. Descobri então a RTTI, mas estou tendo a dificuldade que reportei acima. Se puder me ajudar fico grato.

Marcos


GOSTEI 0
POSTAR