الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

[ تمت الإجابة ]كيفية معرفة الثوابت IOCTL ؟

مغلق
بدأه galious2 في 2 أغسطس 2007 · 3 رد · 1,612 مشاهدة · في أرشيف قسم Windows APIs
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

من توابع ال API هو DEVICEIOCONTROL و أح بارميتراته هو IOCTL مثلا بال سي شارب

[DllImport("kernel32", SetLastError = true)]
		public static extern bool DeviceIoControl(IntPtr hDevice, uint dwIoControlCode,
		IntPtr lpInBuffer, uint nInBufferSize, IntPtr lpOutBuffer,
		uint nOutBufferSize, ref uint lpBytesReturned, IntPtr lpOverlapped);

و هو معرف كالتالي

public const uint IOCTL_STORAGE_EJECT_MEDIA = 0x2D4808;

طبعا الرقم الذي بالون الأحمر موجود ضمن مثال في موقع CODEPROJECT

السؤال :

كيف يمكنني معرفة هذا الرقم دون البحث عنه في أمثلة الغير

طبعا نزلت نسخة ddk و دخت فيها و لم أجد الجواب ؟؟؟؟؟؟

#2

قبل أن تضع سؤالك راجع MSDN جيداً

http://msdn2.microsoft.com/en-us/library/Aa363216.aspx

For lists of supported control codes, see the following topics:

Communications Control Codes

Device Management Control Codes

Directory Management Control Codes

Disk Management Control Codes

File Management Control Codes

Power Management Control Codes

Volume Management Control Codes

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#3

شكرا لك على المساعدة

ولكن لم أصل إلى الرقم ؟؟

#4

غريب!!

لا أعلم إن كنت أصلاً قد إطلعت على الوصلة السابقة التي أشرت إليها أم لا ؟ وبالذات الجزء الذي وضعته هنا !!

كم دقيقة من وقتك الثمين وستجد ما تريد

افتح Device Management Control Codes ستجد

IOCTL_STORAGE_EJECT_MEDIA

وفي نهاية الصفحة ستجد

Header

Declared in Winioctl.h.

راجع آخر نسخة من SDK وستجد القيمة في ملف Winioctl.h ...

#define IOCTL_STORAGE_EJECT_MEDIA			 CTL_CODE(IOCTL_STORAGE_BASE, 0x0202, METHOD_BUFFERED, FILE_READ_ACCESS)

كيف تعرف كم هي القيمة ؟ عليك مراجعة الملف السابق ....

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

هذا الموضوع مغلق.

مواضيع مشابهة