लिनक्स में कीबोर्ड इनपुट को पकड़ो


0

मेरे पास लिनक्स वातावरण (Rpi2 पर कस्टम बिल्डरो) है जो एक कंसोल (कोई एक्स) में लॉग करता है।

पावरअप पर मेरा Qt5 कंसोल एप्लिकेशन शुरू हो गया है, और यह एक कीपर पर प्रतिक्रिया करता है। मेरा मतलब है, जब उपयोगकर्ता एक कुंजी दबाता है, तो एप्लिकेशन कुछ करता है। वीडियो पर दिखाने के लिए कुछ भी नहीं है, ज्यादातर मामलों में कोई मॉनिटर जुड़ा नहीं है।

समस्या यह है कि दबाए गए कुंजी "स्क्रीन" पर वैसे भी दिखाए जाते हैं ताकि उपयोगकर्ता वास्तव में एक कमांड टाइप कर रहा हो! बहुत बुरा।

मेरा आवेदन एक /etc/init.d/S*स्क्रिप्ट से पृष्ठभूमि में चलाया जाता है । इसका कारण यह है कि मैं निम्नलिखित स्क्रिप्ट्स को अवरुद्ध किए बिना इसे शुरू करने का दूसरा तरीका नहीं जानता।

एप्लिकेशन को चलाने के दौरान दबाए गए हर कुंजी को कैप्चर करना (या "हथियाना") लक्ष्य है।


क्या आपका आवेदन वास्तव में keypresses का जवाब देता है, और एकमात्र समस्या स्क्रीन पर आने वाले पात्रों की गूंज है? या कीबोर्ड गतिविधि देखने के लिए एप्लिकेशन विफल हो रहा है?
किमी

हां, एप्लिकेशन संक्षिप्त रूप से प्रतिक्रिया करता है। एकमात्र समस्या गूंज है।
मार्क

जवाबों:


0

सबसे सरल समाधान लगता है, इस तरह से फ़ाइल में मानक आउटपुट को फिर से निर्देशित करना:

[me@linuxbox me]$ your_program_whatever > file_list.txt

आपके प्रोग्राम को निष्पादित किया जाता है और परिणाम file_list.txt नामक फ़ाइल में लिखे जाते हैं, प्रदर्शन पर कोई परिणाम दिखाई नहीं देता है।


प्रयास किया। बेशक एप्लिकेशन से आउटपुट फ़ाइल पर रीडायरेक्ट किया गया है, लेकिन मेरे पास अभी भी स्क्रीन पर दबाए गए कुंजी के इको हैं। मुझे बैकग्राउंड में एप्लिकेशन लॉन्च करने से डर लगता है जो स्क्रीन पर प्रॉम्प्ट दिखाने की ओर ले जाता है।
मार्क
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.