كيف يمكنك جعل تطبيق Windows التي مشروط كتل مدخلات ؟

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

  •  06-07-2019
  •  | 
  •  

سؤال

كنت قد سمعت من PawSense, ويندوز فقط الأداة التي يمنع ضربات المفاتيح من دخل عندما يعتقد أن هناك قطة أو حيوان آخر على لوحة المفاتيح في الكتابة هراء المدخلات مثل "zlxkkkkkkkk;".يبدو أن المشروع متعة القيام به في وقت فراغي ولكن كنت أتساءل عن بعض تفاصيل تنفيذها.

أعتقد أنني يمكن أن تفعل التعرف على جزء منه ، إما مع ترميز-الثابت الاستدلال أو باستخدام نوع من التعرف على نمط خوارزمية (التي كنت قد تعرضت من قبل وتشعر بالراحة).سؤالي هو عن أنظمة برمجة الجانب من الأشياء و منطق كيف يمكنك منع الإدخال.

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

كما الفعلي اليات منع المساهمة في C# ، هناك أسئلة أخرى حول هذا الموقع.سؤالي أن أكرر ما المنطق كنت تستخدم للكشف عن كتلة القط الكتابة.

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

المحلول

وأود أن الانتظار حتى أعتقد أن هناك قطة على لوحة المفاتيح، ثم منع المدخلات، كمنطقة عازلة يمكن أن يكون مشكلة.

وعلى سبيل المثال، إذا أنا الكتابة، وتبديل النوافذ بسرعة، والكتابة، وكيف تحديد حيث يجب أن يكون المفاتيح؟

ويبقيه بسيطة كما يجب أن يكون.

نصائح أخرى

تحتاج إلى النظر في إدخال WIN32 منظومة هوك.هذا المقالة MSDN يغطي أساسيات هذا (الاهتمام يحدد كل تطبيق أو مستوى الموضوع السنانير على نطاق المنظومة السنانير).

مرة واحدة عليك أن تدرك أن, سوف تحتاج للقبض على العديد من المفاتيح الرسائل ذات الصلة ، WM_KEYUP بالتأكيد بضع الأخرى WM_KEYxxxx الرسائل وكذلك ، تبعا للاحتياجات الخاصة بك).

ثم ستحتاج إلى إدخال المنطق الذي يقرر ما إذا كان المفاتيح صالحة أو رطانة ، إما تمر على رسائل (حتى يتمكنوا في نهاية المطاف تنساب إلى التطبيق الذي لديه التركيز) أو تجاهلها.

ودون معرفة أي شيء حول هذا الموضوع، وأود أن تبدأ من حيث يستضيف على مدى مفاتيح طويلة يتم الضغط وليس على ما يتم الضغط مفاتيح الواقع، ويعتقد أنه حيوان لن مجرد الضغط على مفتاح واحد والإفراج عنها بسرعة كبيرة، ثم آخر ، وما إلى ذلك ولكن على الأرجح إلى وقفة على مجموعة من المفاتيح.

وحتى إذا كان يمكنك ببساطة الضغط على المفاتيح الوقت، وأعتقد أن قد عمل.

التفكير خارج الحمل.وأود أن تبدأ مع شيء من هذا القبيل ما يلي:

  1. لا ننتظر أي نشاط المستخدم مثل:2 دقيقة من الوقت.
  2. بدء تشغيل التطبيق الخاص بك
  3. الاستماع إلى ضربات لوحة المفاتيح
  4. مباراة كتبته المفاتيح إذا كانت موجودة في القاموس
  5. كتلة لوحة المفاتيح بعد ستة أو سبعة.
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top