[ad_1]
لقد واجهت مشكلة مؤخرًا. يمكنني الحصول على RSSI في النوافذ باستخدام Native WiFi API، لكن بيانات RSSI ذات تقلبات كبيرة ولا تتغير تقريبًا عندما أقوم بنقل جهاز الكمبيوتر الخاص بي. يقول أحدهم أن Native WiFi API قامت بحساب متوسط بيانات RSSI عندما تعود إلينا، لذلك أريد الحصول على RSSI مباشرة من بطاقة NIC. لقد بحثت كثيرًا على الإنترنت، لكن لم أحصل على أي شيء مفيد. لا أعرف الاستخدام ما هي الوظيفة لتحقيق ذلك، الرجاء مساعدتي! شكرا ~
ما حاولت:
بحثت كثيرا في النت ولم أجد شيئا مفيدا.
لقد استخدمت وظيفة DeviceIoControl ولكنها دائمًا ما تُرجع خطأ.
الحل 1
يبدو هذا مشابهًا إلى حد كبير لنوع المعلومات التي سيتم الاستعلام عنها بطرق مختلفة لبطاقات مختلفة، على سبيل المثال – أتوقع أن تعتمد على الأجهزة. إذا كان هذا هو الحال، فإن السحر يحدث داخل برنامج تشغيل الجهاز.
إلى أي درجة أنت صبور وجيد في إجراء الهندسة العكسية لجهاز واحد؟
لا تحتاج الأقراص الثابتة إلى برامج تشغيل، لذا يمكنها استخدام واجهة متفق عليها، والتي يمكنك الوصول إليها باستخدام DeviceIoControl. لدي أمل ضئيل (حسنًا، في الأساس 0 – ولكن أيضًا، ليس لدي الكثير من المعرفة!) في أن هذا لن يكون سوى عملية مؤلمة ومملة – وهي عملية قد لا يزال لديها أمل ضئيل أو معدوم في أن تكون مثمرة.
كتمرين، حاول تنزيل أوراق البيانات لكل من شرائح NRF24L01 وa7105 بسرعة 2.4 جيجا هرتز. لقد عملت معهم منذ بضع سنوات مضت، ومن الذاكرة، لديهم طرق متشابهة، ولكنها مختلفة تمامًا لاسترداد قيمة RSSI. ستنظر إلى نفس الموقف مع بطاقات NIC، باستثناء أنه سيكون لديك فكرة قليلة جدًا (إن وجدت) عن كيفية قيادة الخطوط الصحيحة إلى أعلى/منخفض حسب الحاجة والاستماع إلى الاستجابة، نظرًا لأنك لا تستطيع ذلك قم بالاتصال مباشرة بمجموعة شرائح 2.4 جيجا هرتز، وبدلاً من ذلك عليك المرور عبر وحدة mcu الموجودة على اللوحة. (ومن هنا جاء اقتراح الهندسة العكسية)
a7105: [^]
NRF24L01: [^]
الحل 2
بالنسبة للأجهزة التي تعمل بنظام التشغيل Windows 10، لديك: WiFiAvailableNetwork.NetworkRssiInDecibelMilliwatts | خاصية NetworkRssiInDecibelMilliwatts – تطوير تطبيقات Windows[^]
في:
فئة WiFiAvailableNetwork – تطوير تطبيقات Windows[^]
يوجد مثال لعينات Win10 sdk هنا: عينات عالمية من Windows/عينات/WiFiScan بشكل رئيسي · عينات عالمية من Microsoft/Windows · GitHub[^]
قم بتنزيل المجموعة الكاملة هنا:
GitHub – نماذج عالمية من Microsoft/Windows: نماذج واجهة برمجة التطبيقات (API) للنظام الأساسي العالمي Windows.[^]
مقالة حديثة توضح كيفية إنشاء ماسح ضوئي لشبكة wifi: التطبيقات الحديثة – إنشاء ماسح ضوئي لشبكة Wi-Fi في UWP[^]
[ad_2]
コメント