this slowpoke moves

Create System Contex Entrys

Hier sind zwei Beispiele, wie man dem Kontextmenü des Systems Einträge hinzufügen und auch wieder löschen kann. Dabei handelt es sich einmal um Einträge für den Ordnerkontext und für den Dateikontext.

Die Einträge werden in der Registry vorgenommen.
uses Controls, SysUtils

procedure TForm1.SetCreateKey(SelectRootKey: HKEY;
                  SelectKey: string; NewKey: string);
begin

  with TRegistry.Create do
    begin
      try
        RootKey := SelectRootKey;
        OpenKey(SelectKey, True);
        if not KeyExists(NewKey) then
          CreateKey(NewKey);
      finally
       Free;
      end;
    end;
end;

procedure TForm1.SetWriteString(SelectRootKey: HKEY;
                  SelectKey: string; NewValueName: string; Value: string);
begin

  with TRegistry.Create do
    begin
      try
        RootKey := SelectRootKey;
        OpenKey(SelectKey, True);
        WriteString(NewValueName, Value);
      finally
       Free;
      end;
    end;
end;

function TForm1.GetDeleteKey(SelectRootKey: HKEY;
                  SelectKey: string; Key: string): Boolean;
begin

  with TRegistry.Create do
    begin
      try
        RootKey := SelectRootKey;
        OpenKey(SelectKey, True);
        Result := DeleteKey(Key);
      finally
       Free;
      end;
    end;
end;
Beispiele für den Ordner Eintrag und löschen :
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
  SetCreateKey(HKEY_CLASSES_ROOT,'Directory\shell', 'FolderContex');
  SetCreateKey(HKEY_CLASSES_ROOT,'Directory\shell\MonApplication', 'Command');
  SetWriteString(HKEY_CLASSES_ROOT,'Directory\shell\MonApplication\Command', '', 'calc %1');
  MessageDlg('Ihre Konfiguration wurde erfolgreich geändert!', mtinformation, [mbOk], 0);
end;

procedure TForm1.SpeedButton2Click(Sender: TObject);
begin
  GetDeleteKey(HKEY_CLASSES_ROOT, 'Directory\shell\FolderContex', 'Command');
  GetDeleteKey(HKEY_CLASSES_ROOT, 'Directory\shell', 'FolderContex');
  MessageDlg('Ihre ursprüngliche Konfiguration wurde erfolgreich wiederhergestellt !', mtinformation, [mbOk], 0)
end;
Beispiele für die Dateien Eintrag und löschen :
procedure TForm1.SpeedButton3Click(Sender: TObject);
begin
  SetCreateKey(HKEY_CLASSES_ROOT,'exefile\shell', 'FileExe');
  SetCreateKey(HKEY_CLASSES_ROOT,'exefile\shell\FileExe', 'Command');
  SetWriteString(HKEY_CLASSES_ROOT,'exefile\shell\FileExe\Command', '', 'calc %1');
  MessageDlg('Ihre Konfiguration wurde erfolgreich geändert !', mtinformation, [mbOk], 0);
end;

procedure TForm1.SpeedButton4Click(Sender: TObject);
begin
  GetDeleteKey(HKEY_CLASSES_ROOT, 'exefile\shell\FileExe', 'Command');
  GetDeleteKey(HKEY_CLASSES_ROOT, 'exefile\shell', 'FileExe');
  MessageDlg('Ihre ursprüngliche Konfiguration wurde erfolgreich wiederhergestellt !', mtinformation, [mbOk], 0)
end;

Keine Kommentare:

Kommentar veröffentlichen

Beliebte Posts

Translate