uTangramFramework.pas
Delphi程序的執行是從Application開始的,Application對象本是在Forms,
為了讓程序支持這個框架,需要在主程序的項目文件中將Forms 改為uTangramFramework
覆蓋原有的Application
uses Windows, uTangramFramework, MainForm in 'MainForm.pas' {Main};
從uTangramFramework.pas的代碼可以看出,基本上還是調用Forms裡的Application,
只是增加了一些框架需要的初始化工作
procedure TTangramApp.CreateForm(InstanceClass: TComponentClass; var Reference); begin Forms.Application.CreateForm(InstanceClass,Reference); end;
Application創建時,初始化了模塊管理對象
constructor TTangramApp.Create; begin FLoadModuleFromRegistry:=True; FModuleMgr:=TModuleMgr.Create; end;
默認情況下,框架是從注冊表或者XML文件自動進行模塊加載管理的,這並不符合做ERP的需要,
procedure TTangramApp.Run; begin if FLoadModuleFromRegistry then begin FModuleMgr.LoadModules; FModuleMgr.Init; end; Forms.Application.Run; FModuleMgr.final; end;
所以將LoadModuleFromRegistry賦為False,采取手動進行模塊加載管理
Application.Initialize; Application.MainFormOnTaskbar := True; Application.LoadModuleFromRegistry:=False; Application.CreateForm(TMain, Main); Application.Run;
以上這就是程序創建之初時的操作