17-12-2010, 10:48 AM
وعليكم السلام ورحمة الله وبركاته
http://www.delphi4arab.net/forum/showpos...ostcount=2
هناك طريقة أخرى لإيجاد الرقم التسلسلي باستخدام WMI...
المرفق...
الاستخدام:
بعد إضافة المكتبة hddinfo.pas.
متوافق مع إصدارات دلفي من 7 إلى 2010 على الأقل.
المصدر:
هناك أيضا مكتبة GLibWMI بنفس المبدأ:
كذلك:
عيب استخدام WMI أنه يتطلب صلاحية مسؤول على Vista/Seven،إضافة إلى إمكانية إيقاف خدمة WMI وبالتالي تعطيل التابع.
هناك مكونات تجارية لا تستخدم WMI تحسنت مؤخرا:
إلى حين تظهر ملفاته المصدرية جرب.
والله أعلم.
إقتباس :جربتهم كلهم و لم اجد نتيجةإن كنت تستخدم إصدار دلفي 2009 فما فوق استخدم أنماط متوافقة:
http://www.delphi4arab.net/forum/showpos...ostcount=2
هناك طريقة أخرى لإيجاد الرقم التسلسلي باستخدام WMI...
المرفق...
الاستخدام:
PHP كود :
function GetIdeDiskSerialNumber: string;
var
hdd: THDDInfo;
begin
hdd := THDDInfo.Create(nil);
try
hdd.CanonicalScsiAddressing := false;
hdd.Method := gimAuto;
hdd.Drive := dPrimaryMaster;
Result := hdd.Serial;
finally
hdd.Free;
end;
end;
متوافق مع إصدارات دلفي من 7 إلى 2010 على الأقل.
المصدر:
كود :
http://delphi-soft.ru/files/more/HDDInfo_2.3.htmlكود :
http://sourceforge.net/projects/glibwmi/كود :
http://www.magsys.co.uk/delphi/magwmi.aspعيب استخدام WMI أنه يتطلب صلاحية مسؤول على Vista/Seven،إضافة إلى إمكانية إيقاف خدمة WMI وبالتالي تعطيل التابع.
هناك مكونات تجارية لا تستخدم WMI تحسنت مؤخرا:
كود :
http://www.devlib.net/tgetdiskserial.htmوالله أعلم.

