я это реализовал намного проще...
Просто привожу код из одной своей программы... Примерно так:
| Код | program Project1;
uses Forms, SysUtils, Windows, Classes, uVirtualIniFile, TypInfo, Controls, IniFiles, Messages, Variants, Graphics, Dialogs, ExtCtrls, FileInfo, Unit1 in 'Unit1.pas' {Form1}, Unit2 in 'Unit2.pas' {Form2}, Unit5 in 'Unit5.pas' {Form5}, Unit6 in 'Unit6.pas' {Form6}, Unit7 in 'Unit7.pas' {Run}, Unit30 in 'Unit30.pas' {form_color}, Unit3 in 'Unit3.pas' {Sound}, Unit4 in 'Unit4.pas' {Form4}, Unit8 in 'Unit8.pas' {KNK_STYLE}, Unit9 in 'Unit9.pas' {CodEdit}, Unit10 in 'Unit10.pas' {EasyEditor}, Unit11 in 'Unit11.pas' {obj_select}, Unit12 in 'Unit12.pas' {CMD_Run}, Unit13 in 'Unit13.pas' {RichEditor}, Unit14 in 'Unit14.pas' {About}, Unit15 in 'Unit15.pas' {Form15}, Unit16 in 'Unit16.pas' {Style}, Unit17 in 'Unit17.pas' {FORM_PROP}, Unit18 in 'Unit18.pas' {Lng}, Unit19 in 'Unit19.pas' {SoundSystem}, Unit21 in 'Unit21.pas' {DLLModuls}, Unit22 in 'Unit22.pas' {DLLInfo}, Unit23 in 'Unit23.pas' {Logo}, Unit24 in 'Unit24.pas' {ItemsEditor}, Unit25 in 'Unit25.pas' {Form25}, Unit27 in 'Unit27.pas' {e_NewVar}, Unit28 in 'Unit28.pas' {PropObj}, Unit29 in 'Unit29.pas' {e_DelVar}, Unit31 in 'Unit31.pas' {e_Var}, Unit32 in 'Unit32.pas' {e_XYWH}, Unit33 in 'Unit33.pas' {e_ObjText}, Unit26 in 'Unit26.pas' {Archiv_Progress}, Unit34 in 'Unit34.pas' {PackageEditor}, Unit35 in 'Unit35.pas' {e_Message}, Unit36 in 'Unit36.pas' {e_CopyFile}, Unit37 in 'Unit37.pas' {e_MoveFile}, Unit38 in 'Unit38.pas' {e_DeleteFile}, Unit39 in 'Unit39.pas' {e_ExtractFile}, Unit40 in 'Unit40.pas' {e_Dir}, Unit41 in 'Unit41.pas' {e_MciPlay}, Unit42 in 'Unit42.pas' {SelFiles}, Unit43 in 'Unit43.pas' {Var_Temp}, Unit44 in 'Unit44.pas' {e_WebUrl}, Unit45 in 'Unit45.pas' {ImageEdit}, Unit46 in 'Unit46.pas' {e_FuncComm}, Unit47 in 'Unit47.pas' {LoadProject}, Unit48 in 'Unit48.pas' {e_PicPath}, Unit49 in 'Unit49.pas' {e_SetProp}, Unit50 in 'Unit50.pas' {e_IfThen}, Unit20 in 'Unit20.pas' {Form20}, Unit51 in 'Unit51.pas' {sh_unreg}, Unit52 in 'Unit52.pas' {e_Link}, Unit53 in 'Unit53.pas' {e_DllModuls}, Unit54 in 'Unit54.pas' {FontDlg}, Unit55 in 'Unit55.pas' {Temples}, Unit56 in 'Unit56.pas' {NewTemp}, Unit57 in 'Unit57.pas' {Lite_Info}, Unit58 in 'Unit58.pas' {ExtDialog}, Unit59 in 'Unit59.pas' {FastChange}, Unit62 in 'Unit62.pas' {InfoFile}, Unit63 in 'Unit63.pas' {FrmPass}, Unit60 in 'Unit60.pas' {FreeReg}, Unit61 in 'Unit61.pas' {e_OneScript}, Unit64 in 'Unit64.pas' {e_YESNO}, Unit65 in 'Unit65.pas' {e_Regwrite}, Unit66 in 'Unit66.pas' {e_Regread}, Unit67 in 'Unit67.pas' {e_SetupINF}, Unit68 in 'Unit68.pas' {e_Speed}, Unit69 in 'Unit69.pas' {e_IniWriter}, Unit70 in 'Unit70.pas' {e_FormAnimate}, Unit71 in 'Unit71.pas' {e_IniRead}, Unit72 in 'Unit72.pas' {e_IniSection};
{$R *.res}
procedure LoadLocal; var Ini:TIniFile; begin Ini:=TIniFile.Create(ExtractFilePath(ParamStr(0))+'config.ini'); LocalLng:=ini.ReadString('main','lng','Russian (RU)'); FK:=INI.ReadString('main','freekey',''); Ini.Free; end;
function GetFileVersion(const FileName: string): string; Var FI:TFileInfo; begin FI:=TFileInfo.Create(FileName); Result:=FI.VersionString; MSBVer:=Result; FI.Free; end;
begin SetThreadLocale(1049);
Logo:=TLogo.Create(nil); LoadLocal; Logo.Show; Logo.Refresh; Logo.Label2.Caption:='Version '+GetFileVersion(Application.ExeName); LOGO.Label1.Caption:='Initialize...'; LOGO.Label1.Repaint; Application.Initialize; Application.Title := 'Mess Box AR'; Application.CreateForm(TForm1, Form1); Application.CreateForm(TImageEdit, ImageEdit); Application.CreateForm(TLoadProject, LoadProject); Application.CreateForm(Te_DllModuls, e_DllModuls); Application.CreateForm(TFontDlg, FontDlg); Application.CreateForm(TNewTemp, NewTemp); Application.CreateForm(TLite_Info, Lite_Info); Application.CreateForm(TExtDialog, ExtDialog); Application.CreateForm(TFastChange, FastChange); Application.CreateForm(TInfoFile, InfoFile); Application.CreateForm(TFrmPass, FrmPass); Application.CreateForm(TFreeReg, FreeReg); Application.CreateForm(Te_OneScript, e_OneScript); Application.CreateForm(Te_YESNO, e_YESNO); Application.CreateForm(Te_Regwrite, e_Regwrite); Application.CreateForm(Te_Regread, e_Regread); Application.CreateForm(Te_SetupINF, e_SetupINF); Application.CreateForm(Te_Speed, e_Speed); Application.CreateForm(Te_IniWriter, e_IniWriter); Application.CreateForm(Te_FormAnimate, e_FormAnimate); Application.CreateForm(Te_IniRead, e_IniRead); Application.CreateForm(Te_IniSection, e_IniSection); logo.prog.Position:=5; LOGO.Label1.Caption:='Main form...'; LOGO.Label1.Repaint; logo.prog.Position:=10; sleep(10); Application.CreateForm(TCodEdit, CodEdit); LOGO.Label1.Caption:='Code Editor...'; LOGO.Label1.Repaint; logo.prog.Position:=15; Application.CreateForm(TStyle, Style); Application.CreateForm(TForm5, Form5); Application.CreateForm(TForm2, Form2); LOGO.Label1.Caption:='Edit Form...'; LOGO.Label1.Repaint; sleep(10); logo.prog.Position:=20; Application.CreateForm(TForm25, Form25); LOGO.Label1.Caption:='Easy Editor forms...'; LOGO.Label1.Repaint; logo.prog.Position:=25; Application.CreateForm(Te_NewVar, e_NewVar); Application.CreateForm(TPropObj, PropObj); Application.CreateForm(Te_DelVar, e_DelVar); Application.CreateForm(Te_Var, e_Var); Application.CreateForm(Te_XYWH, e_XYWH); logo.prog.Position:=30; sleep(10); Application.CreateForm(Te_ObjText, e_ObjText); Application.CreateForm(TArchiv_Progress, Archiv_Progress); Application.CreateForm(TPackageEditor, PackageEditor); Application.CreateForm(Te_Message, e_Message); Application.CreateForm(Te_CopyFile, e_CopyFile); logo.prog.Position:=35; Application.CreateForm(Te_MoveFile, e_MoveFile); Application.CreateForm(Te_DeleteFile, e_DeleteFile); Application.CreateForm(Te_ExtractFile, e_ExtractFile); Application.CreateForm(Te_Dir, e_Dir); logo.prog.Position:=40; sleep(10); Application.CreateForm(Te_MciPlay, e_MciPlay); Application.CreateForm(Te_PicPath, e_PicPath); Application.CreateForm(Te_SetProp, e_SetProp); Application.CreateForm(Te_IfThen, e_IfThen); logo.prog.Position:=45; Application.CreateForm(Tsh_unreg, sh_unreg); Application.CreateForm(Te_Link, e_Link); Application.CreateForm(Te_FuncComm, e_FuncComm); Application.CreateForm(Te_WebUrl, e_WebUrl); logo.prog.Position:=50; sleep(10); LOGO.Label1.Caption:='Shell Forms...'; LOGO.Label1.Repaint; logo.prog.Position:=60; sleep(10); Application.CreateForm(TSelFiles, SelFiles); Logo.Repaint; logo.prog.Position:=70; LOGO.Label1.Caption:='Other forms...'; LOGO.Label1.Repaint; sleep(10); Application.CreateForm(TForm6, Form6); Application.CreateForm(TRun, Run); Application.CreateForm(Tform_color, form_color); Application.CreateForm(TSound, Sound); Application.CreateForm(TTemples, Temples); logo.prog.Position:=75; Application.CreateForm(TForm4, Form4); Application.CreateForm(TKNK_STYLE, KNK_STYLE); Application.CreateForm(TEasyEditor, EasyEditor); Application.CreateForm(Tobj_select, obj_select); Application.CreateForm(TCMD_Run, CMD_Run); logo.prog.Position:=80; sleep(10); Application.CreateForm(TRichEditor, RichEditor); Application.CreateForm(TAbout, About); Application.CreateForm(TForm15, Form15); Application.CreateForm(TFORM_PROP, FORM_PROP); Application.CreateForm(TLng, Lng); logo.prog.Position:=85; sleep(10); Application.CreateForm(TSoundSystem, SoundSystem); Application.CreateForm(TDLLModuls, DLLModuls); Application.CreateForm(TDLLInfo, DLLInfo); Application.CreateForm(TItemsEditor, ItemsEditor); Application.CreateForm(TVar_Temp, Var_Temp);
sleep(10); logo.prog.Position:=90; LOGO.Label1.Caption:='Language load...'; LOGO.Label1.Repaint; logo.prog.Position:=97; sleep(10); Application.CreateForm(TForm20, Form20); logo.prog.Position:=100; Logo.Hide; Application.Run;
end.
|
|