Neue Datei-Endung registrieren

Erklärung
Bei HKEY_CLASSES_ROOT werden alle Endungen mit Programmen verknüpft. Wir öffnen '.dlp\Shell\Open\Commad\'.
Bei '.dlp\Shell\Open\Command\' bestimmt man das Defaultprogramm, für Dateien mit der Endung .dlp mit dem Defaultwert in der Registry, welches sich bei Doppelklick öffnet (In diesem Fall das Programm selbst + %1, das heißt Programmname + angeklickte Datei. Der Pfadname der angeklickten Datei kann als Parameter vom Programm abgefangen werden). Beim zweiten Teil, dem Untermenü, genau gleich verfahren (Lediglich der Name des Untermenüs muss noch reigeschrieben werden(&Mit Notepad öffnen))

Quelltext
Wichtig: In die Uses-Klausel REGISTRY aufnehmen
  uses Registry;

procedure TForm1.FormCreate(Sender: TObject);
var R: TRegistry;
Begin
//Verknüpft die Anwendung mit der Endung "dlp"
R := TRegistry.create;
R.RootKey := HKEY_CLASSES_ROOT;
R.OpenKey('.dlp\Shell\Open\Command',true);
R.WriteString('', application.Exename + ' %1');
R.CloseKey;

//Das Menü, welches auf Rechtklick erscheint erweitern
R.OpenKey('.dlp\Shell\Notepad\',true);
R.WriteString('','&Mit Notepad öffnen');
R.OpenKey('Command',true);
R.WriteString('','Notepad %1');

R.free;
end;