ufrmMain.pas 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. unit ufrmMain;
  2. interface
  3. uses
  4. Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  5. Dialogs, StdCtrls
  6. , mybean.tools.beanFactory
  7. , mybean.core.intf
  8. , uIPluginForm, IniFiles;
  9. type
  10. TfrmMain = class(TForm)
  11. btnShowModal: TButton;
  12. edtBeanID: TEdit;
  13. Label1: TLabel;
  14. btnShow: TButton;
  15. Memo1: TMemo;
  16. dlgOpen: TOpenDialog;
  17. btnManualLoad: TButton;
  18. btnUnLoad: TButton;
  19. procedure btnManualLoadClick(Sender: TObject);
  20. procedure FormCreate(Sender: TObject);
  21. procedure btnShowClick(Sender: TObject);
  22. procedure btnShowModalClick(Sender: TObject);
  23. procedure btnUnLoadClick(Sender: TObject);
  24. procedure FormClose(Sender: TObject; var Action: TCloseAction);
  25. private
  26. { Private declarations }
  27. public
  28. { Public declarations }
  29. end;
  30. var
  31. frmMain: TfrmMain;
  32. implementation
  33. {$R *.dfm}
  34. procedure TfrmMain.btnManualLoadClick(Sender: TObject);
  35. var
  36. lvFile:string;
  37. begin
  38. if not dlgOpen.Execute then exit;
  39. lvFile := dlgOpen.FileName;
  40. (TMyBeanFactoryTools.applicationContext as IApplicationContextEx01).checkLoadLibraryFile(PAnsiChar(AnsiString(lvFile)));
  41. lvFile :='';
  42. end;
  43. procedure TfrmMain.FormCreate(Sender: TObject);
  44. var
  45. lvINiFile:TIniFile;
  46. begin
  47. lvINiFile := TIniFile.Create(ChangeFileExt(ParamStr(0), '.history.ini'));
  48. try
  49. edtBeanID.Text := lvINiFile.ReadString('main', 'lastPluginID', '');
  50. finally
  51. lvINiFile.Free;
  52. end;
  53. end;
  54. procedure TfrmMain.btnShowClick(Sender: TObject);
  55. begin
  56. (TMyBeanFactoryTools.getBean(edtBeanID.Text) as IPluginForm).showAsNormal;
  57. end;
  58. procedure TfrmMain.btnShowModalClick(Sender: TObject);
  59. begin
  60. (TMyBeanFactoryTools.getBean(edtBeanID.Text) as IPluginForm).showAsModal;
  61. end;
  62. procedure TfrmMain.btnUnLoadClick(Sender: TObject);
  63. var
  64. lvFile:string;
  65. begin
  66. if not dlgOpen.Execute then exit;
  67. lvFile := dlgOpen.FileName;
  68. if (TMyBeanFactoryTools.applicationContext as IApplicationContextEx2).unLoadLibraryFile(PAnsiChar(AnsiString(lvFile))) then
  69. begin
  70. ShowMessage('Ð¶ÔØ³É¹¦');
  71. end;
  72. //lvFile :='';
  73. end;
  74. procedure TfrmMain.FormClose(Sender: TObject; var Action: TCloseAction);
  75. var
  76. lvINiFile:TIniFile;
  77. begin
  78. lvINiFile := TIniFile.Create(ChangeFileExt(ParamStr(0), '.history.ini'));
  79. try
  80. lvINiFile.WriteString('main', 'lastPluginID', edtBeanID.Text);
  81. finally
  82. lvINiFile.Free;
  83. end;
  84. end;
  85. end.