Variaveis.....????
Bom...meu problema é o seguinte.....eu programo em php e estou desenvolvendo um programa pra geração de etiquetas on-line....hehehe...só eu mesmo..........bom.....é o seguinte.........quando eu chamo um programa no executar do windows.....o internet explorer por exemplo.....eu faço assim.....
iexplore [b:92c3daaf64]http://www.google.com.br[/b:92c3daaf64]....ai abre o navegador indo direto pra página do google.......ai esta meu problema......eu queria chamar um programa em delphi.......desse mesmo modo....no executar......mais ou menos assim....
[b:92c3daaf64]meuprograma.exe VARIAVEL_1[/b:92c3daaf64]..........agora.....como eu faço pra ele reconhecer essa variavel_1.....dentro do programa........
se alguém souber.....por favor...........
Vlw...... =) ......
iexplore [b:92c3daaf64]http://www.google.com.br[/b:92c3daaf64]....ai abre o navegador indo direto pra página do google.......ai esta meu problema......eu queria chamar um programa em delphi.......desse mesmo modo....no executar......mais ou menos assim....
[b:92c3daaf64]meuprograma.exe VARIAVEL_1[/b:92c3daaf64]..........agora.....como eu faço pra ele reconhecer essa variavel_1.....dentro do programa........
se alguém souber.....por favor...........
Vlw...... =) ......
Andrecg
Curtidas 0
Respostas
Michael
07/05/2005
Olá amigo!
O Delphi dispõe as funções [b:05917fbad3]ParamStr [/b:05917fbad3]e [b:05917fbad3]ParamCount[/b:05917fbad3], que manipulam os parâmetros passados via linha de comando, que é o q vc quer. ParamStr deve receber o índice do parâmetro da linha. Veja o exemplo:
[b:05917fbad3]programa.exe[/b:05917fbad3] [color=red:05917fbad3]http://www.clubedelphi.net [/color:05917fbad3][color=blue:05917fbad3]http://www.devmedia.com.br[/color:05917fbad3]
O primeiro parâmetro, http://www.clubedelphi.net é acessado por [b:05917fbad3]ParamStr(1). [/b:05917fbad3]O segundo, http://www.devmedia.com.br, [b:05917fbad3]ParamStr(2)[/b:05917fbad3].
Já [b:05917fbad3]ParamCount [/b:05917fbad3]retorna o total de parâmetros passados via linha de comando. Vc deve usá-la para saber se foi passado algum, pois se vc usar ParamStr com um índice inexistente, será gerada uma exceção em run-time.
Ah, [b:05917fbad3]ParamStr(0)[/b:05917fbad3] retorna o caminho completo do aplicativo, por exemplo, C:\programa.exe. Produz o mesmo efeito de Application.ExeName.
Veja um exemplo de como obter todos os parâmetros passados:
Use assim:
Entendido? ;-)
Abraços!
O Delphi dispõe as funções [b:05917fbad3]ParamStr [/b:05917fbad3]e [b:05917fbad3]ParamCount[/b:05917fbad3], que manipulam os parâmetros passados via linha de comando, que é o q vc quer. ParamStr deve receber o índice do parâmetro da linha. Veja o exemplo:
[b:05917fbad3]programa.exe[/b:05917fbad3] [color=red:05917fbad3]http://www.clubedelphi.net [/color:05917fbad3][color=blue:05917fbad3]http://www.devmedia.com.br[/color:05917fbad3]
O primeiro parâmetro, http://www.clubedelphi.net é acessado por [b:05917fbad3]ParamStr(1). [/b:05917fbad3]O segundo, http://www.devmedia.com.br, [b:05917fbad3]ParamStr(2)[/b:05917fbad3].
Já [b:05917fbad3]ParamCount [/b:05917fbad3]retorna o total de parâmetros passados via linha de comando. Vc deve usá-la para saber se foi passado algum, pois se vc usar ParamStr com um índice inexistente, será gerada uma exceção em run-time.
Ah, [b:05917fbad3]ParamStr(0)[/b:05917fbad3] retorna o caminho completo do aplicativo, por exemplo, C:\programa.exe. Produz o mesmo efeito de Application.ExeName.
Veja um exemplo de como obter todos os parâmetros passados:
function ObterParametrosLinhaComando : TStringList; var I : integer; begin if ParamCount = 0 then exit; Result := TStringList.Create; for I := 1 to ParamCount do Result.Add(ParamStr(I)); end;
Use assim:
var
Parametros : TStringList;
I : integer;
begin
Parametros := ObterParametrosLinhaComando;
if Parametros = nil then
{ Nenhum parâmetro passado }
else
for I := 0 to Parametros.Count - 1 do
ShowMessage(Parametros[I]);
end;Entendido? ;-)
Abraços!
GOSTEI 0
Yallebr
07/05/2005
Pessoal,
Aproveitando a dica que foi muito útil. Agora que a aplicação le um parametro tem como eu retornar um valor?
Por exemplo. Eu executo meu programa com parametro 1 e o executavel me retorna um resultado?
Isso é pelo fator q algumas empresas de gerar serial americana exigem que seu software retorne o valor do registro e possa ser chamada apenas com parametro.
Assim, passo ´Yalle Cunha´. e a aplicação me retorna ´RRRRR´ isso sem precisar abrir um formulario, pelo próprio exe.
Abraços
Aproveitando a dica que foi muito útil. Agora que a aplicação le um parametro tem como eu retornar um valor?
Por exemplo. Eu executo meu programa com parametro 1 e o executavel me retorna um resultado?
Isso é pelo fator q algumas empresas de gerar serial americana exigem que seu software retorne o valor do registro e possa ser chamada apenas com parametro.
Assim, passo ´Yalle Cunha´. e a aplicação me retorna ´RRRRR´ isso sem precisar abrir um formulario, pelo próprio exe.
Abraços
GOSTEI 0
Beppe
07/05/2005
Dá pra usar STD_OUT(console), o programa que chamou lê de lá, só redireciona, com pipes, tem exemplos no fórum.
GOSTEI 0