2 cliques no arquivo abre meu programa
estou criando um editor de texto e consegui fazer fazer meu programa abrir quando eu dou 2 cliques nos arquivos .txt...
meu problema é este: quando eu dou 2 cliques num arquivo (ex: leiame.txt) meu programa abre, mas o texto que está escrito no arquivo não aparece, o que posso fazer pra solucionar esse problema?
obrigado pela ajuda :roll: :lol:
meu problema é este: quando eu dou 2 cliques num arquivo (ex: leiame.txt) meu programa abre, mas o texto que está escrito no arquivo não aparece, o que posso fazer pra solucionar esse problema?
obrigado pela ajuda :roll: :lol:
Zico
Curtidas 0
Respostas
Fabio Gimenez
02/04/2003
Estou com o mesmo problema, me de uma dica se já encontrou a solução
Ats.
Fabio
fabio_gimenez@ig.com.br
Ats.
Fabio
fabio_gimenez@ig.com.br
GOSTEI 0
Obubiba
02/04/2003
Eu não sei como vocês fizeram para abrir o arquivo.
Eu utilizo o registro do Windows para isso, mas não estou me lembrando, eu vou procurar aqui, pois tenho um programa que funciona corretamente. Assim que eu encontrar eu posto aqui como é.
Eu utilizo o registro do Windows para isso, mas não estou me lembrando, eu vou procurar aqui, pois tenho um programa que funciona corretamente. Assim que eu encontrar eu posto aqui como é.
GOSTEI 0
Dhiogo
02/04/2003
se o metodo de abrir o programa de acordo com o arquivo esta correto (´programa.exe ¬1´) basta adicionar esse codigo no oncreate do form.
memo1.lines.loadfromfile(paramstr(0));
memo1.lines.loadfromfile(paramstr(0));
GOSTEI 0
Mrkalvin
02/04/2003
Faça assim:
Exemplo das entradas do registro:
procedure TForm1.Button1Click(Sender: TObject);
begin
with TRegIniFile.Create(´´) do
try
RootKey := HKEY_CLASSES_ROOT;
WriteString(´.txt´, ´´, ´txtfile´);
WriteString(´txtfile´, ´´, ´Descrição do arquivo txt´);
WriteString(´txtfile\DefaultIcon´, ´´, ´C:\Meu editor.exe,0´);
WriteString(´txtfile\Shell\open\command´, ´´, [b:d83d63a5fb]´C:\Meu editor.exe ¬1´[/b:d83d63a5fb]);
finally
Free;
end;
end;
No evento OnShow do Form coloque o código abaixo:
procedure TForm1.FormShow(Sender: TObject);
begin
if FileExists(ParamStr(1)) then
Memo1.Lines.LoadFromFile(ParamStr(1));
end;
Se no registro não colocar o [b:d83d63a5fb]¬1[/b:d83d63a5fb], o programa será chamado mas o arquivo não irá abrir no memo1.
Exemplo das entradas do registro:
procedure TForm1.Button1Click(Sender: TObject);
begin
with TRegIniFile.Create(´´) do
try
RootKey := HKEY_CLASSES_ROOT;
WriteString(´.txt´, ´´, ´txtfile´);
WriteString(´txtfile´, ´´, ´Descrição do arquivo txt´);
WriteString(´txtfile\DefaultIcon´, ´´, ´C:\Meu editor.exe,0´);
WriteString(´txtfile\Shell\open\command´, ´´, [b:d83d63a5fb]´C:\Meu editor.exe ¬1´[/b:d83d63a5fb]);
finally
Free;
end;
end;
No evento OnShow do Form coloque o código abaixo:
procedure TForm1.FormShow(Sender: TObject);
begin
if FileExists(ParamStr(1)) then
Memo1.Lines.LoadFromFile(ParamStr(1));
end;
Se no registro não colocar o [b:d83d63a5fb]¬1[/b:d83d63a5fb], o programa será chamado mas o arquivo não irá abrir no memo1.
GOSTEI 0
Obubiba
02/04/2003
WriteString(´txtfile´, ´´, ´Descrição do arquivo txt´);
WriteString(´txtfile\DefaultIcon´, ´´, ´C:\Meu editor.exe,0´);
WriteString(´txtfile\Shell\open\command´, ´´, [b]´C:\Meu editor.exe ¬
Era exatamente isto que eu estava procurando. Eu havia anotado em um caderno, mas nem eu mesmo estava entendendo as anotações.
GOSTEI 0
Fabio Gimenez
02/04/2003
Funcionou direitinho essa dica, mas ainda tenho um problema...
Coloquei um código no projeto para não abrir mas que uma instancia do programa, então quando clico em um arquivo associado ele abre o programa e o arquivo, mas quando escolho outro arquivo, ele não abre, apenas mostra o programa novamente.
Tentei colocar uma rotina para modificar o memo1 do formulario principal no arquivo de abertura de projeto, mas da pau na horaque abre.
Alguem poderia me ajudar???
Ats.
Fabio Gimenez
obs: Esse caras do fórum do clube Delphi são unidos mesmo hein...boa gente
Coloquei um código no projeto para não abrir mas que uma instancia do programa, então quando clico em um arquivo associado ele abre o programa e o arquivo, mas quando escolho outro arquivo, ele não abre, apenas mostra o programa novamente.
Tentei colocar uma rotina para modificar o memo1 do formulario principal no arquivo de abertura de projeto, mas da pau na horaque abre.
Alguem poderia me ajudar???
Ats.
Fabio Gimenez
obs: Esse caras do fórum do clube Delphi são unidos mesmo hein...boa gente
GOSTEI 0