HomeWork_10 تمرين تطبيقي
#7
و عليكم السلام و رحمة الله
طالت غيبتك اخي TF6M Smile

نعم... ملاحظة جيدة : الخطأ العمدي خاص بالمتغير : Rootkey
حيث الدالة يجب ان تتاثر بالقيمة التي تمرر اليها...

في حالة التمرين :
كود :
function TMain.WriteReg([color=Red]KeyRoot[/color]: HKEY; Key, Value, NewValue: string): Boolean; var Reg: TRegistry; begin Result := False; Reg := TRegistry.Create; Reg.RootKey := [color=red]HKEY_LOCAL_MACHINE[/color]; if Reg.OpenKey(Key, True) then begin if not (Reg.ReadString(Value) = NewValue) then begin Reg.WriteString(Value, NewValue); Result := True; end; end else begin Result := False; end; Reg.CloseKey; Reg.Free; end;

الكتابة الصحيحة :
كود :
function TMain.WriteReg([color=red]KeyRoot[/color]: HKEY; Key, Value, NewValue: string): Boolean; var Reg: TRegistry; begin Result := False; Reg := TRegistry.Create; Reg.RootKey := [color=red]KeyRoot[/color]; if Reg.OpenKey(Key, True) then begin if not (Reg.ReadString(Value) = NewValue) then begin Reg.WriteString(Value, NewValue); Result := True; end; end else begin Result := False; end; Reg.CloseKey; Reg.Free; end;

يعني في الحالة الأولى اننا مهما غيرنا القيمة الممررة للمتغير فانه يعالج فقط الــ Hive الخاص بــ Local machine لانه موجود داخل الدالة بصفة قيمة ثابتة...

و الحالة الثانية تعطي القابلية التامة لتمرير كل انواع الــ Hive الموجودة في النظام و معالجتها...

بالتوفيق ان شاء الله


الردود في هذا الموضوع
HomeWork_10 تمرين تطبيقي - بواسطة STRELiTZIA - 28-10-2009, 04:58 PM
HomeWork_10 تمرين تطبيقي - بواسطة STRELiTZIA - 30-10-2009, 09:59 AM
HomeWork_10 تمرين تطبيقي - بواسطة Goblin - 30-10-2009, 12:54 PM
HomeWork_10 تمرين تطبيقي - بواسطة STRELiTZIA - 30-10-2009, 02:04 PM
HomeWork_10 تمرين تطبيقي - بواسطة TF6M - 02-11-2009, 02:12 PM
HomeWork_10 تمرين تطبيقي - بواسطة STRELiTZIA - 02-11-2009, 03:11 PM
HomeWork_10 تمرين تطبيقي - بواسطة TF6M - 02-11-2009, 03:17 PM
HomeWork_10 تمرين تطبيقي - بواسطة Goblin - 29-10-2009, 06:43 PM
HomeWork_10 تمرين تطبيقي - بواسطة Goblin - 02-11-2009, 08:46 PM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم