code-tutorial.com

The best resources for developers

How do you create your own moniker (URL Protocol) on Windows systems?

procedure InstallIntoRegistry;
var
  Reg: TRegistry;
begin
  Reg := TRegistry.Create;
  try
    Reg.RootKey := HKEY_CLASSES_ROOT;
    if Reg.OpenKey("moniker", True) then
    begin
      Reg.WriteString("", "URL:Name of moniker");
      Reg.WriteString("URL Protocol", "");
      Reg.WriteString("Source Filter", "{E436EBB6-524F-11CE-9F53-0020AF0BA770}");
      Reg.WriteInteger("EditFlags", 2);

      if Reg.OpenKey("shellopencommand", True) then
      begin
        Reg.WriteString("", """ + ParamStr(0) + "" "%1"");
      end;
    end else begin
      MessageBox(0, "You do not have the necessary access rights to complete this installation!" + Chr(13) +
        "Please make sure you are logged in with a user account with administrative rights!", "Access denied", 0);
      Exit;
    end;
  finally
    FreeAndNil(Reg);
  end;

  MessageBox(0, "Application WebStart has been installed successfully!", "Installed", 0);
end;

Tags: windows winapi moniker

Source: By Brett Veenstra as answer to the question

This code snippet was collected from stackoverflow, and is licensed under CC BY-SA 2.5


Related code-snippets: