PDA

View Full Version : سوال: خواندن مقادیر حافظه در C#



ardvisoor
جمعه 19 فروردین 1390, 10:35 صبح
سلام من میخواستم ویرایش ویندوز که در متغیر KdVersionBlock در ویندوز هستش ( در آدرس 0x034-) بدست بیارم و از روی آن مقادیر متغیرهای _DBGKD_DEBUG_DATA_HEADER64, _KDDEBUGGER _DATA64
و _DBGKD_GET_VERSION64 رو بخونم. اما اصلا نمیدونم در C# چطور میتونم این کار رو انجام بدم. کسی ایده ای داره که بشه این کار رو کرد.
ممنون. خیلی واجبه

barnamenevisjma
جمعه 19 فروردین 1390, 11:39 صبح
اشاره گرها رو امتحان کردین؟

haghft
جمعه 19 فروردین 1390, 13:19 عصر
من شنیدم C# اصلا اشاره گر نداره اینو یه استاد برنامه نویسی می گفت یعنی اشتباه کرده؟!:متعجب:

exlord
جمعه 19 فروردین 1390, 16:31 عصر
من شنیدم C# اصلا اشاره گر نداره اینو یه استاد برنامه نویسی می گفت یعنی اشتباه کرده؟!:متعجب:
چیزایی که استاد ها بلدن از چیزایی که بلد نیستن کمتره ...
Pointer in C# (http://www.c-sharpcorner.com/UploadFile/rajeshvs/PointersInCSharp11112005051624AM/PointersInCSharp.aspx)
Pointer in C# (http://www.c-sharpcorner.com/UploadFile/pcurnow/usingpointers10022007082330AM/usingpointers.aspx)
Pointer in C# (http://msdn.microsoft.com/en-us/library/y31yhkeb.aspx)

barnamenevisjma
جمعه 19 فروردین 1390, 20:31 عصر
راستی این رو هم فراموش نکنید که باید صریحا اجازه کامپایل پروژه حاوی unsafe code رو بدین.
(روی پروژه مورد نظر properties بگیرین. به زبانه Build برید و تیک گزینه Allow unsafe code رو بذارید.)

ardvisoor
سه شنبه 23 فروردین 1390, 09:06 صبح
ممنون توانستم مشکلم رو با تعدادی از فانکشنهای خود++ visual Cحل کنم ، اما حالا مشکلی که دارم تبدیل آدرس های مجازی به فیزیکی هستش. کسی در این زمینه تجربه ای داره؟ خود برنامه های در سطح کرنل از MmGetPhysicalAddress استفاده می کنند اما در مود کاربر بدون درایور امکان استفاده ازش وجود نداره. کسی راه حلی سراغ داره؟