Parâmetros passados ao aplicativo
Blz,
Estou desenvolvendo em editor de texto em MDI
Pergunta:
Qdo eu mando abrir um arquivo de texto no meu editor (abrir com) ele abre o meu editor mais ñ carrega o texto, gostaria de faze igual ao bloco de notas, qdo vc clica em.txt ele abre o bloco de notas e carrega o texto.
Qdo vc abre meu editor vc tem q clicar em novo para abrir o MDIChild a onde esta o RichEdit
Como posso saber q o meu programa foi chamado
Valew.
[b:8b5fd093c2]Tópico editado. Título: Como?????? tem como???? Dãh[/b:8b5fd093c2]
Estou desenvolvendo em editor de texto em MDI
Pergunta:
Qdo eu mando abrir um arquivo de texto no meu editor (abrir com) ele abre o meu editor mais ñ carrega o texto, gostaria de faze igual ao bloco de notas, qdo vc clica em.txt ele abre o bloco de notas e carrega o texto.
Qdo vc abre meu editor vc tem q clicar em novo para abrir o MDIChild a onde esta o RichEdit
Como posso saber q o meu programa foi chamado
Valew.
[b:8b5fd093c2]Tópico editado. Título: Como?????? tem como???? Dãh[/b:8b5fd093c2]
Wolverine
Curtidas 0
Respostas
Ildefonso
17/01/2004
Olá, Wolverine...
Existe uma propriedade, acho Application.Parameters[nn] ou algo muito parecido.
Se pedimos Paremeters[0], ela retorna o path + o nome do exe que estamos executando. Parameters[1] trará o primeiro argumento da linha de comando que iniciou o exe... Não testei, mas acho que quando você usa o comando ´Abrir com´ do Explorer, ele se encarregará de fornecer o nome do arquivo como um parâmetro.
Experimente.
Existe uma propriedade, acho Application.Parameters[nn] ou algo muito parecido.
Se pedimos Paremeters[0], ela retorna o path + o nome do exe que estamos executando. Parameters[1] trará o primeiro argumento da linha de comando que iniciou o exe... Não testei, mas acho que quando você usa o comando ´Abrir com´ do Explorer, ele se encarregará de fornecer o nome do arquivo como um parâmetro.
Experimente.
GOSTEI 0
Beppe
17/01/2004
É uma função que você quer. ParamStr(Indice) retorna um argumento passado. (0 - app. path; 1 - 1o. arg; 2 - 2o. arg; etc)
GOSTEI 0
Wolverine
17/01/2004
obrigado amigos, mais ñ esta muito claro para min, onde delcarar
Valew
Valew
GOSTEI 0
Wolverine
17/01/2004
FALEW GALERA
BEPPE, MUITO OBRIGADO, eu usei assim
if ParamStr(1) > ´0´ then
begin
Application.CreateForm(TFormedit, Formedit);
Formedit.Show;
Formedit.abrirpro(ParamStr(1));
end;
coloque esso no Source do projeto e funcionou blzinha
BEPPE, MUITO OBRIGADO, eu usei assim
if ParamStr(1) > ´0´ then
begin
Application.CreateForm(TFormedit, Formedit);
Formedit.Show;
Formedit.abrirpro(ParamStr(1));
end;
coloque esso no Source do projeto e funcionou blzinha
GOSTEI 0
Beppe
17/01/2004
Não entendi esse ´ParamStr(1) > ´0´´. Deve ter funcionado, mas se você quer testar se foi passado um nome de arquivo, use
ParamStr(1) <> ´´
GOSTEI 0
Wolverine
17/01/2004
se > 0 é pq o programa foi chamado, tipo: se eu clicar em em txt e mandar abrir com o meu editor
se < 0 é pq eu abrir o meu programa pelo o executável, tipo: abri o editor
é tipo Treu e False, eu acho pq deu certo.
Mais deu certo, eu consegui saber se foi passado um nome de arquivo com o ShowMessage e tb deu certo pq fez oq eu queria, passei o ParamStr(1) para o parâmetro FileName do Formedit.abrirpro, e o texto foi carregado se eu clicar em em txt e mandar abrir com o meu editor
Porém com <> ´ ´ deu erro, ficou azul em ´SelStart := 0;´ do procedure Formedit.abrirpro, mais deu certo com <>´´ sem espaço.
Mais Uma Vez,
Muito Obrigado
se < 0 é pq eu abrir o meu programa pelo o executável, tipo: abri o editor
é tipo Treu e False, eu acho pq deu certo.
Mais deu certo, eu consegui saber se foi passado um nome de arquivo com o ShowMessage e tb deu certo pq fez oq eu queria, passei o ParamStr(1) para o parâmetro FileName do Formedit.abrirpro, e o texto foi carregado se eu clicar em em txt e mandar abrir com o meu editor
Porém com <> ´ ´ deu erro, ficou azul em ´SelStart := 0;´ do procedure Formedit.abrirpro, mais deu certo com <>´´ sem espaço.
Mais Uma Vez,
Muito Obrigado
GOSTEI 0