Bueno lo que quieres me da la impresión que no está bien enfocado, el hecho de que a un menú se le añada una nueva opción, no tiene nada de particular, pero si se lo añade el usuario, finalmente el programador tendrá que desarrollar un módulo o función que haga lo que el usuario quiere, por lo tanto no quedará más remedio que retocar el programa y programar lo que se pide, si se utilizaran Dlls habría que recompilar estas y enviarselas al usuario.
En cuanto a añadir una opción a un menu en tiempo de ejecución te pongo un ejemplo muy simple
Código Delphi
[-]
nit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Menus;
type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
una1: TMenuItem;
Primera1: TMenuItem;
Segunda1: TMenuItem;
Button1: TButton;
procedure MiMensaje(Sender:Tobject);
procedure Button1Click(Sender: TObject);
procedure Primera1Click(Sender: TObject);
private
public
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var
MiMenu:TmenuItem;
begin
MiMenu := TMenuItem.Create(Self);
MiMenu.Caption := 'Nueva opción';
MiMenu.OnClick:=MiMensaje;
Una1.Add(MiMenu);
end;
procedure TForm1.MiMensaje(Sender:Tobject);
begin
ShowMessage('Atención esta opción no está disponible');
end;
end.
Un saludo y pégale una ojeadita a la Guía de estilo de los foros.