Enregistrer sa propre extension de fichier
Pour Enregistrer son extension, il suffit d'écrire dans la base de registre, aux clés:
HKEY_LOCAL_MACHINE\<Extension>\<DefaultKey>
HKEY_LOCAL_MACHINE\<DefaultKey>\Shell\<Caption>\Command
Voici comment faire:
Enregistrer sa propre extension
uses
Registry;
procedure RegisterExt(Extension, DefaultKey, Caption: string; ForceDefault: boolean);
var
Registre: TRegistry;
s: string;
begin
// Pour s'ajouter au menu contextuel de l'extension
Registre := TRegistry.Create;
try
Registre.RootKey := HKEY_CLASSES_ROOT;
Registre.OpenKey('\' + Extension, 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
// S'il n'y a pas d'icone par défaut, on met celle de l'application
Registre.OpenKey('\' + s + 'DefaultIcon', true);
Registre.WriteString('', ParamStr(0) + ',0');
end;
if ForceDefault then
begin
// Pour forcer l'ouverture avec notre application
Registre.OpenKey('\' + s + 'Shell', true);
Registre.WriteString('', Caption);
end;
Registre.OpenKey('\' + s + 'Shell' + Caption, true);
Registre.WriteString('', 'DS&WebEdit');
Registre.OpenKey('\' + s + 'Shell' + Cation + 'Command', true);
Registre.WriteString('', '"' + ParamStr(0) + '" "%1"');
finally
Registre.Free;
end;
end;
3 requête(s) SQL executée(s) en 0.001 Secs - Temps total de génération de la page : 0.006 Secs
