![]() |
|
المؤشرات و الخطأ : EAccessViolation - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : المؤشرات و الخطأ : EAccessViolation (/showthread.php?tid=5221) |
المؤشرات و الخطأ : EAccessViolation - ALmuhhnad - 13-05-2013 السلام عليكم ورحمة الله وبركاتة سؤال متعلق بالمؤشرات عندقراءة عنوان اكتب هذا السطر :PHP كود : Form1.Caption := IntToHex(PDWORD($00401000)^,8); وعندما احاول ان اكتب على العنوان بنفس الطريقة لا استطيع يظهر لي خطأ : EAccessViolation هذا الكود الذي استعملته : PHP كود : PDWORD($00401000)^ := 5 المؤشرات و الخطأ : EAccessViolation - SMP3 - 13-05-2013 بالطبع لن تستطيع التعديل عليها .. لأن الجزء من الذاكرة التي يقع فيها هذا العنوان محمي (ذاكرة محمية) يجب تغيير صلاحيات الذاكرة : اطلع على : كود : http://msdn.microsoft.com/en-us/library/windows/desktop/aa366786(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/aa366785(v=vs.85).aspxكود : VirtualAlloc
VirtualAllocEx
WriteProcessMemoryالمؤشرات و الخطأ : EAccessViolation - ALmuhhnad - 13-05-2013 ههههه ... كنت اتوقع ذلك , لكن ما جعلني اسئل لاني عندما استعمل اوامر الاسبملي PHP كود : MOV DWORD PTR DS:[$00401000],0x5 لا تظهر هذه الرسالة ... لذلك ضننت ان الاوامر التي تنفذ من الكود لها صلاحيات التعديل ... طيب ... اخي المبرمجي SMP3 لما لا تظهر هذه الحالة مع اوامر الاسمبلي ؟ ------ الرد الثاني على ما يبدو ان نفس الرسالة تظهر مع اوامر الاسمبلي ... @@ لكن الغريب انها لم تظهر هذه الرسالة عندما استعملت اكواد الاسبملي على احد الآلعاب ربما كانت الصلاحيات معدلة من الأسااس شكراً لك اخي المبرمج SMP3 المؤشرات و الخطأ : EAccessViolation - SMP3 - 14-05-2013 الصلاحيات للذاكرة تختلف من برنامج لاخر (يمكن القول ان الكومبايلر هو الذي يحدد صلاحيات الولوج للذاكرة) |