1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| procedure Associ(Nameapplication,ext: string; DefaultKey: string);
var
Registre: TRegistry;
s: string;
stapp : string;
begin
// Pour s'ajouter au menu contextuel de l'extension
Registre := TRegistry.Create;
try
Registre.RootKey := HKEY_CLASSES_ROOT;
Registre.OpenKey('\' + ext, true);
s := Registre.ReadString('');
if Length(s) = 0 then
begin // Si le type n'est pas enregistré
s := DefaultKey;
Registre.WriteString('', s);
end;
if not Registre.KeyExists('\' + s + '\DefaultIcon') then
begin
Registre.OpenKey('\' + s + '\DefaultIcon', true);
Registre.WriteString('', ParamStr(0) + ',0');
end;
stapp :=format('\%s\Shell\%s',[s,Nameapplication])
Registre.OpenKey(stapp, true);
Registre.WriteString('', Nameapplication);
stapp :=format('\%s\Shell\%s\Command',[s,Nameapplication])
Registre.OpenKey(stapp, true);
Registre.WriteString('', '"' + ParamStr(0) + '" "%1"');
finally
Registre.Free;
end;
end; |
Partager