unit Unit1;interfaceuses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, OleCtnrs;type
  TForm1 = class(TForm)
    OleContainer1: TOleContainer;
    MainMenu1: TMainMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    N4: TMenuItem;
    N5: TMenuItem;
    SaveDialog1: TSaveDialog;
    procedure N2Click(Sender: TObject);
    procedure N3Click(Sender: TObject);
    procedure N5Click(Sender: TObject);
  private
    ObjectFileName: TFileName;
    InsertCanceled: Boolean;
  public
    { Public declarations }
  end;var
  Form1: TForm1;implementation{$R *.dfm}procedure TForm1.N2Click(Sender: TObject);
begin
  if (OleContainer1.State = osEmpty) or
    (MessageDlg('删除当前的文件?', mtConfirmation, mbOkCancel, 0) = mrOk) then
    if OleContainer1.InsertObjectDialog then
    begin      with OleContainer1 do
        DoVerb(PrimaryVerb);
    end
    else
     InsertCanceled := true;
end;
procedure TForm1.N3Click(Sender: TObject);
begin
  with SaveDialog1 do
  begin
    SaveDialog1.FileName := ObjectFileName;      if Execute then
      begin
        OleContainer1.SaveToFile(FileName);
        ObjectFileName := FileName;
      end    else
      OleContainer1.SaveToFile(FileName);
  end;
end;procedure TForm1.N5Click(Sender: TObject);
begin
close;
end;end.