با سلام
برنامه اي كه قبلا گذاشته بودم نواقص و ايراداتي داشت كه بيشتر دوستان به اين موضوع اشاره كرده بودند كه وقتي دوباره " گرفتن پشتيبان" را ميزنيم. تشخيص نميده فايل وجود داره و فايلي با همون اسم قبلي ساخته ميشه با حجم چند برابر.
منم تو اين مدت سال همت نكردم درستش كنم. البته كار ساده ايه هم هست.
حالا يه مقدار تغييرات دادم و اين مشكل را برطرف كردم.
البته هنوز جاي كار زيادي داره. در برنامه فعلي وقتي فايلي با اون اسم وجود داشته باشه پيغام ميده كه اسم ديگه اي انتخاب كنيد ولي شما ميتونيد اين امكان را هم اضافه كنيد كه بپرسه مي خواهيد replace بشه يا ميخواهيد خود برنامه rename كنه و مثلا _2 به اسم فايل اضافه كنه.
خلاصه اينكه هنوز اين برنامه نواقصي داره كه ديگه هر جور دوست داشتين تغييرش بدين.
************************************************** *********
نياز به يك adocommand داريد كه ارتباطش را با دلفي برقرار كنيد.
و یک shellTreeView یا یک ابزار دیگر شبیه آن براي انتخاب مسيري كه مي خواهيد فايل بك آپ آنجا ذخيره بشه.
يك edit براي وارد كردن نام فايل (edit1)
يك speedbutton براي ساخت نام پيش فرض فايل بك آپ )ميتونه button يا bitbtn هم باشه. هيچ فرقي نداره)
تو رويداد كليكش نوشته بشه
procedure TFrmBackup.SpeedButton1Click(Sender: TObject);
var
s,s1,s2,s3:string;
begin
s:=PrintNormal;
s1:=copy(s,1,4);
s2:=copy(s,6,2);
s3:=copy(s,9,2);
edit1.text:='backup'+s1+'_'+s2+'_'+s3;
end;
من invisible ش كردم. و از فرم اولي كه مي خوام وارد اين فرم بشم. مجازا كليكش ميكنم.
procedure TForm1.Button1Click(Sender: TObject);
begin
FrmBackup.show;
FrmBackup.SpeedButton1.Click;
end;
و يك button براي اجراي كد گرفتن backup كه اين كد توش نوشته شده:
procedure TFrmBackup.Button1Click(Sender: TObject);
var
str:string;
begin
str:=ShellTreeView1.Path;
str:=str+'\'+Edit1.Text;
if FileExists(str) then // check mikone file i ba in esm vojood dare ya na
begin
ShowMessage('A file with this name is exists, select another name');
Edit1.SetFocus;
end
else
begin
with ADOCommand1 do
begin
CommandText:='BACKUP DATABASE MyDataBase TO DISK='+QuotedStr ( str);
execute
end;
ShowMessage('BackUp DataBase has successfully done');
end;
end;
به جاي MyDataBase اسم database خودتون را بنويسيد
************************************************** *********
به همين سادگي! بقيه نواقص برنامه را به بزرگي خودتون ببخشيد
موفق باشيد
التماس دعا
فايل نمونه ضميمه مي باشد