كيف يمكنني التحكم في برنامج التحكم المدمج للجهاز في C# باستخدام HTTP؟

StackOverflow https://stackoverflow.com/questions/3727956

سؤال

لديّ قطعة من الأجهزة مع تحكم مستخدم مضمن يتم الوصول إليه عن طريق كتابة عنوان IP الخاص بالجهاز في متصفح ويب. يتم توصيل الجهاز مباشرة بجهاز الكمبيوتر الخاص بي عبر كابل Ethernet X-Over و IP الثابت. أحتاج إلى دمج التحكم في الجهاز في تطبيق C# الخاص بي.

كانت فكرتي هي استخدام حزمة sniffer لمراقبة حركة المرور بين جهاز الكمبيوتر الخاص بي والجهاز بينما في نفس الوقت يلعب مع عناصر تحكم الجهاز في متصفح الويب الخاص بي. ثم معرفة الحزم التي يرسلها جهاز الكمبيوتر الخاص بي والتي تتوافق مع عناصر التحكم التي أستخدمها في ذلك الوقت. ثم يمكنني إنشاء فئة من حزم HTTP أو TCP في تطبيق C# وإرسالها إلى الجهاز باستخدام فئة المقبس.

ومع ذلك ، لا أملك الكثير من بروتوكولات الشبكة ، لذلك عندما أستخدم Wireshark لمراقبة حركة المرور بين جهاز الكمبيوتر الخاص بي والجهاز ، لست متأكدًا من أين أبدأ عند معرفة الحزم التي تفعل ما يفعله. هل لدى أي شخص أي أفكار؟ أنا منفتح على أي شيء. شكرًا!!

تحرير: من الصعب شرح ماهية جهازي بالضبط ، ولكن في الأساس مستشعر تفصيلي ويستخدم عادة في التطبيقات الصناعية ، لذلك من المحتمل أن يستخدم Modbus ، وهو ما أعرفه بشكل معتدل. هل تعرف كيف يمكنني معرفة البروتوكول الذي يتم استخدامه من خلال فحص الحزم؟ لقد لاحظت (باستخدام Wireshark) أن الحزم التي يتم إرسالها من جهاز الكمبيوتر الخاص بي إلى الجهاز تحدث في نمط من حزمة 1 HTTP ، ثم 5 حزم TCP وكرر نفس التسلسل طالما أن التحكم مفتوح في متصفحي. هل هناك أي موارد قد تعطيني فهمًا أفضل لما يجري؟

هل كانت مفيدة؟

المحلول

إذا تم التحكم في هذا المتصفح ، فستكون فكرتي الأولى هي فحص صفحات الويب التي يرسلها الجهاز إلى متصفحك وشاهد ما يتم توجيه المتصفح إلى القيام به عند معالجة عناصر التحكم - يبدو أن هذا أسهل بكثير من العبث مع Wireshark.

هل هناك شيء أفتقده يجعل هذا مستحيلًا (مثل نظام التحكم القائم على الفلاش)؟ إذا تم ذلك فقط باستخدام HTML أو JavaScript ، ورسائل HTML أو شيء أكثر تطوراً بعض الشيء مثل Ajax ، فيجب أن يكون من السهل نسبيًا حل الواجهة.

نصائح أخرى

اعتمادًا على الجهاز ، فسيستخدم إما متغيرًا من بروتوكول Modbus (http://en.wikipedia.org/wiki/Modbus) أو شيء غامض ومحرك.

أفضل ما يجب فعله هو الاستمرار في إرسال نفس الأمر إلى الجهاز مرارًا وتكرارًا حتى تتمكن من التعرف على أوجه التشابه في الحزم.

إذا كان ذلك يتعلق ، فمن المحتمل أن يكون الأمر بسيطًا مثل زوج أوامر/بيانات أو ربما نقطة XML. إذا كنت محظوظًا حقًا ، فسيتم ضغطها أو ترميزها ، ولكن ما لم تقم باختراق لعبة أو جهاز نقدي ، فهذا غير مرجح.

إن سؤال الشركة المصنعة للجهاز عما إذا كان بإمكانهم إعطائك المواصفات غالبًا ما يعمل أيضًا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top