рдореЗрд░реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рддреНрдпреЗрдХ рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдЕрдкрдиреЗ рдХрд╛рдо рд╕реЗ рдирд╣реАрдВ рдЪрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдСрдЯреЛ-рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рдЙрдЪрд┐рдд рд╣реИ, рдЬреЛ рд╕рд░реНрд╡рд░ рдкрд░ рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдкрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдЧрд╛ред рдХрдИ рддрд░реАрдХреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рдкрд╛рдпрд╛ (рд╣рд╛рд▓рд╛рдБрдХрд┐ рд╕рдмрд╕реЗ рд╕рд╣реА рдирд╣реАрдВ)
рддреЛ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо:
- рдЬрдм рдЪрд╛рд▓реВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕рд░реНрд╡рд░ рдкрд░ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИред
- рдпрджрд┐ рд╕рд░реНрд╡рд░ рд╡рд░реНрддрдорд╛рди рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд╕рд╛рде рдЬрд╝рд┐рдк рд╕рдВрдЧреНрд░рд╣ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВред
- рд╣рдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рдирд╛рдо рдкрд░ (рдмреИрдХрдЕрдк рдФрд░ рдлрд╝рд╛рдЗрд▓ рдХреА рдкрд╣реБрдВрдЪ рдХреЗ рд▓рд┐рдП) рдирд╛рдо рджреЗрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, program.exe рд╕реЗ program.backup рддрдХред
- рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдЬрдЧрд╣ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЕрдирдкреИрдХ рдХрд░реЗрдВред
- рдЕрджреНрдпрддрди рдХреЗ рд╕рд╛рде рд╕рдВрдЧреНрд░рд╣ рд╣рдЯрд╛рдПрдВред
- рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рддрд╛ рд╣реИред
рд▓реЗрдХрд┐рди рдЗрд╕ рд╕рдм рд╕реЗ рдкрд╣рд▓реЗ, рдкрд╣рд▓реЗ MSSQL рдлрд╝реАрд▓реНрдб рдХреЗ рд╕рд╛рде рдПрдХ
рдЕрджреНрдпрддрди рддрд╛рд▓рд┐рдХрд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП) рдмрдирд╛рдПрдБ:
рдирд╛рдо - рдкреНрд░рдХрд╛рд░ varchar;
рд╕рдВрд╕реНрдХрд░рдг- рдкреНрд░рдХрд╛рд░ varchar;
рдлрд╝рд╛рдЗрд▓реЗрдВ - рдкреНрд░рдХрд╛рд░ varbinary (рдЕрдзрд┐рдХрддрдо) (рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдмреВрдБрдж рдлрд╝реАрд▓реНрдб)ред
рдпрд╣ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд░рд┐рдХреЙрд░реНрдб рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╣реИ рдЬрд╣рд╛рдВ рдХрд╛рд░реНрдпрдХреНрд░рдо рдирд╛рдо рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╣реЛрдЧрд╛ред
рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреА рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдЦреНрдпрд╛ рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдХреЛрдб рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ:
function TForm1.GetMyVersion: string; type TVerInfo=packed record Nevazhno: array[0..47] of byte;
рдЕрдм рд╣рдореЗрдВ рдЕрднрд┐рд▓реЗрдЦрд╛рдЧрд╛рд░ рдХреЛ рдЕрдирдкреИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЕрдкрдбреЗрдЯ рдХреЛ рдПрдХ рдЬрд╝рд┐рдк рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд
рдХрд░реВрдВрдЧрд╛ ,
рд╕реЗрд╡рдирдЬрд╝ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдбреЗрд▓реНрдлреА рдореЗрдВ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реНрд░реЛрддреЛрдВ рдХреЗ рд▓рд┐рдП рдкрде рдХреЛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдЬреЛрдбрд╝
рджреВрдВрдЧрд╛ ред
рдЕрдм рд╣рдореЗрдВ рдЖрд░реНрдХрд╛рдЗрд╡ рдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЕрдкрд▓реЛрдб рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдореИрдВрдиреЗ рд╕рд░реНрд╡рд░ рдкрд░ рдЕрдкрдбреЗрдЯ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдлреЙрд░реНрдо рдмрдирд╛рдпрд╛:
OpenDialog рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдм рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рд╣реИ рд╕рдВрдкрд╛рджрди рдореЗрдВ рдкрде рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛
if OpenDialog1.Execute then cxButtonEdit1.Text:=OpenDialog1.FileName;
рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдЦреНрдпрд╛ рдорд╛рд╕реНрдХ рдХреЗ рд╕рд╛рде
рдорд╛рд╕реНрдХрдбрд┐рдЯ рдореЗрдВ рджрд░реНрдЬ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ - -
9.9.9.0; 1; _рд╕рд╣реЗрдЬреЗрдВ рдмрдЯрди рдкрд░, рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдЗрд▓ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВ:
var blobF: TBlobField; begin if not FileExists(OpenDialog1.FileName) then begin ShowMessage(' !'); exit; end else cxButtonEdit1.Text:=OpenDialog1.FileName; try ADOTable1.TableName:=Updater;
рдпрд╣ рдереЛрдбрд╝рд╛ рдЧрд▓рдд рддрд░реАрдХрд╛ рд╣реИ, рдПрдХ рдЕрд▓рдЧ рдзрд╛рд░рд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИ, рдЦрд╛рд╕рдХрд░ рдЕрдЧрд░ рд╕рдВрдЧреНрд░рд╣ рдмрдбрд╝рд╛ рд╣реИред
рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ -
рд╕реЗрд╡рдирдЬреЗрд▓ рдФрд░
рд╢реЗрд▓рдПрдкреАрдЖрдИ ред
рдЕрдм рдЗрд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ рд╣реБрдП рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЕрдкрдбреЗрдЯ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдмрдирд╛рдПрдВ:
Procedure TForm1.Update; var path,fullpath,Ourversion,LastVersion:string; blobF: TBlobField; begin
рдпрд╣рд╛рдВ рдПрдХ рдЦрд╛рдореА рднреА рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдЕрдирдкреИрдХ рдХрд░рдирд╛ рдФрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ, рди рдХрд┐ рдкреВрд░реЗ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЬреИрд╕рд╛ рдореИрдВрдиреЗ рдХрд┐рдпрд╛ рдерд╛ред
рдзреНрдпрд╛рди рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП 2 рдЫреЛрдЯреА рдЪреАрдЬреЗрдВ рд╣реИрдВ:
1. рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ 7z.dll рдлрд╝рд╛рдЗрд▓ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЬрд╛рдВрдЪрдирд╛ рдмреЗрд╣рддрд░ рд╣реИ:
if FileExists(path+'\7z.dll') then begin ShowMessage(' 7z.dll'); exit; end;
рдпрд╛ рдХреБрдЫ рдФрд░ред
2. рдЕрджреНрдпрддрди рдХреЗ рд╕рд╛рде рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ 7z.dll рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╛ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдКрдкрд░ рд▓рд┐рдЦрд╛ рд╣реИ, рд╕рдм рдХреБрдЫ рдЕрд▓рдЧ рд╕реЗ рдЕрдирдкреИрдХ рдХрд░реЗрдВ рдФрд░ рдХреЗрд╡рд▓ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдирдкреИрдХ рди рдХрд░реЗрдВред
рд╡рд╣ рд╕рдм рд╣реИред рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдмрджрд▓рдирд╛ рдирд╣реАрдВ рд╣реИред
рдЗрд╕ рд╡рд┐рдзрд┐ рдореЗрдВ рдХреБрдЫ рдЦрд╛рдорд┐рдпрд╛рдВ рд╣реИрдВ, рдФрд░ рдореБрдЭреЗ рдкрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рдореИрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдХрд┐рд╕реА рднреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдЕрдиреБрднрд╡ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдЕрднреА рднреА рдЕрдВрддрд┐рдо рд░реВрдк рджреЗрдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИред