امروز براي نمونه دو سه تا از API هاي ساده و کارآمد را معرفي مي کنيم. البته قبل از آن اين مطلب را بگويم که Delphi استفاده از توابع API را ساده کرده است و ما حداکثر با Use کردن يک فايل از آنها استفاده مي کنيم.
1- رويه ( Procedure ) Sleep:
با استفاده از اين رويه در اجراي برنامه مي توان وقفه اي ايجاد کرد.
شکل کلي اين رويه به صورت زير است.
کد:
Procedure Sleep(dwMilliseconds:DWord);
همانطور که پيدا است اين رويه يک ورودي از جنس DWord مي گيرد. اين ورودي عددي است که زمان توقف را بر حسب ميلي ثانيه مشخص مي کند(مثلا عدد 1000 معرف يک ثانيه است).
مثال:کد زير مقدار Progress يک ProgressBar را از 0 تا 100 درصد در طول 10 ثانيه زياد مي کند.
کد:
var
i:Byte;
begin
i:=0;
while i<100 do
begin
i:=i+10;
ProgressBar1.Position:=i;
Sleep(1000);
end;
end;
2- تابع CopyFile:
يک فايل را از محلي به محلي ديگر کپي مي کند.
شکل کلي اين تابع به صورت زير است.
کد:
Function CopyFile (lpExistingFilename, lpNewFilename:PChar, bFailIfExists:BOOL):BOOL;
پارامتر lpExistingFilename يک String(در حقيقت PChar که نوعي رشته است) است که مسير و نام فايل مبدا را مشخص مي کند.
پارامتر lpNewFilename يک String(در حقيقت PChar که نوعي رشته است) است که مسير و نام فايل مقصد را مشخص مي کند. دقت کنيد که نام فايل مقصد نيز بايد قيد شود و معمولا برابر با نام فايل مبدا گرفته مي شود.
پارامتر bFailIfExists يک مقدار منطقي(Boolean) است که اگر فايل در مقصد وجود داشت چه کاري انجام شود. اگر True بود و فايل مقصد قبلا موجود باشد کار تابع نيمه تمام مي ماند و اگر False باشد روي فايل اول Overwrite مي گردد.
خروجي تابع منطقي است و اگر کارش به درستي انجام شود، True و در غير اين صورت False است.
مثال:خط زير يک فايل را از درايو C داخل درايو D کپي مي کند و اگر فايل در مقصد وجود داشته باشد آنرا Overwrite مي کند.
کد:
CopyFile('C:\Chortke.jpg','D:\Chortke.jpg',False);
3- تابع GetDriveType :
اين تابع نوع هر يک از درايوهاي سيستم را مشخص مي کند انواعي از قبيل فلاپي ، ديسک سخت ، CDROM و غيره.
شکل کلي اين تابع به صورت زير است.
کد:
Function GetDriveType(lpRootPathName:PChar): LongWord;
پارامتر lpRootPathName يک رشته است و نام درايو مورد نظر را مشخص مي کند مثل "C:\".
خروجي اين تابع يک عدد است که مي تواند مقادير زير باشد.
DRIVE_UNKNOWN: درايوي که معرفي شده است قابل دسترسي نمي باشد. برابر با عدد 0 مي باشد.
DRIVE_NO_ROOT_DIR: درايوي که معرفي شده است وجود ندارد. برابر با عدد 1 مي باشد.
DRIVE_REMOVABLE: برابر با مقدار عددي 2 مي باشد و مشخص مي کند که ديسک درايو مورد نظر از نوع قابل حمل مي باشد.
DRIVE_FIXED: برابر با مقدار عددي 3 مي باشد ومشخص مي کند که درايو مورد نظر از نوع ثابت است.
DRIVE_REMOTE: برابر با مقدار عددي 4 مي باشد و مشخص مي کند که درايو مورد نظر از نوع درايوشبکه مي باشد.
DRIVE_CDROM: برابر با مقدار عددي 5 مي باشد و مشخص مي کند که درايو مورد نظر از نوع CD_Drive مي باشد.
DRIVE_RAMDISK: برابر با مقدار عددي 6 بوده و مشخص مي کند درايو مورد نظر از نوع درايو هاي ساخته شده در RAM مي باشد.
مثال: خط زير مشخص کننده نوع درايو C مي باشد.
کد:
if GetDriveType('C:\') = DRIVE_FIXED then
ShowMessage ('It is a hard drive Partition');
يک مثال با سه تابع فوق ساخته ام که مي توانيد بوسيله لينک زير آنرا همراه Source Code اش DownLoad کنيد.
http://rightclick.ir/downloads/Api_Delphi_Test1_rar