Un pequeño truco para registrar desde Delphi las extensiones de archivos en el Registro de Windows.
Me he decidido a postearlo pues habia buscado con anterioridad aqui y no lo habia encontrado hasta que di con la solucion. Espero que sea de ayuda.
Un Saludo.
Código Delphi
[-]
procedure RegisterFileType(ExtName:String; AppName:String; DefaultIcon:string);
var
reg:TRegistry;
begin
reg := TRegistry.Create;
try
reg.RootKey:=HKEY_CLASSES_ROOT;
reg.OpenKey('.' + ExtName, True) ;
reg.WriteString('', ExtName + 'file') ;
reg.CloseKey;
reg.CreateKey(ExtName + 'file') ;
reg.OpenKey(ExtName + 'file\DefaultIcon', True) ;
reg.WriteString('', AppName + ','+DefaultIcon) ;
reg.CloseKey;
reg.OpenKey(ExtName + 'file\shell\open\command', True) ;
reg.WriteString('',AppName+' "%1"') ;
reg.CloseKey;
finally
reg.Free;
end;
SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil) ;
end;