Quick Tips: Extensões de arquivos - Parte 2
Nesta quick tip veremos como associar uma extensão de arquivo com o nosso aplicativo.
Para este exemplo, adicione um edit e um botão no formulário, conforme mostrado na figura abaixo:
Neste exemplo vamos digitar a extensão no edit e quando clicarmos no botão iremos associar a mesma ao nosso aplicativo.
Crie o seguinte método no formulário:
procedure TForm1.RegisterExtApp(Extensao:String; Aplicacao:String) ;
var
reg:TRegistry;
begin
reg := TRegistry.Create;
try
reg.RootKey:=HKEY_CLASSES_ROOT;
//Abre a chave
reg.OpenKey('.' + Extensao, True) ;
reg.WriteString('', Extensao + 'file') ;
reg.CloseKey;
//cria chave para o arquivo
reg.CreateKey(Extensao + 'file') ;
reg.OpenKey(Extensao + 'file\DefaultIcon', True) ;
reg.WriteString('', Aplicacao + ',0') ;
reg.CloseKey;
//abre chave responsavel por comando de execução
reg.OpenKey(Extensao + 'file\shell\open\command', True) ;
reg.WriteString('',Aplicacao+' "%1"') ;
reg.CloseKey;
finally
reg.Free;
end;
SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil) ;
end;
Execute o aplicativo, digite a extensão .dev e clique no botão associar. Depois disso, vá no Explorer e crie um arquivo com extensão .dev e clique duas vezes no mesmo. O nosso aplicativo se abrirá.
É isso aí pessoal, vou ficando por aqui.
Fiquem a vontade para criticar, tirar dúvidas e sugerir novos temas.
Abraço.
Ricardo Coelho