It 3 steps for dublicate component at runtime. First is copy the component in clipboard. Second is rename component which is still on the form. And the last step is get component from clipboard. Don't forget to register your component's class.
uses Clipbrd; ... procedure TForm1.Button1Click(Sender: TObject); begin Clipboard.SetComponent(Button1); Button1.Name:='OriginalButton'; Clipboard.GetComponent(Self,GroupBox1); end; ... initialization RegisterClasses([TButton]); ...