2009-11-08 16 views
18

मैं उन छिपे हुए डिवाइस के स्वामित्व को लेना चाहता हूं जो पहले से ही प्लग इन हो चुके हैं, इसे आउटपुट का उपभोग करते हैं, जबकि दूसरों को (एक्स 11 या टर्मिनल) इसे लेने से रोकते हैं।आप एक छिपा डिवाइस का स्वामित्व कैसे ले सकते हैं?

यदि मैं इसकी सहायता कर सकता हूं, तो मैं एक टर्मिनल होने का नाटक करना चाहता हूं, बल्कि किसी विशेष छिपाने या चरित्र डिवाइस को एकाधिकार बनाने के लिए नहीं चाहता हूं। विचार यह है कि कुछ छुपा उपकरणों को एक्स/टर्मिनल द्वारा चूहे/कीबोर्ड के रूप में पहचाना जा सकता है, लेकिन किसी अन्य माउस या कीबोर्ड का इस्तेमाल किसी और चीज़ के लिए किया जा सकता है, लेकिन ऐसा करने के लिए आपको यह सुनिश्चित करने की ज़रूरत है कि वे नकली इनपुट नहीं भेज रहे हैं टर्मिनल खोलें

क्या किसी के पास यह अंतर्दृष्टि है कि यह कैसे किया जा सकता है?

उत्तर

22

मैंने यह किया है - मेरा विशिष्ट एप्लिकेशन एक डिमन था जो यूएसबी छिपाई बारकोड रीडर (जो यूएसबी छिपाई कीबोर्ड डिवाइस के रूप में प्रस्तुत करता है) से ईवेंट पढ़ता है।

ऐसा करने के लिए मैंने डिवाइस डिवाइस इंटरफ़ेस का उपयोग किया, जिस डिवाइस के बाद मैं डिवाइस के अनुरूप /dev/input/event* डिवाइस खोल रहा था। इसके बाद आप डिवाइस पर EVIOCGRAB ioctl जारी कर सकते हैं, जो इसे विशेष उपयोग के लिए पकड़ लेता है, और डिवाइस से उपलब्ध घटनाओं (जो कीप्रेस, माउस मूवमेंट इत्यादि का प्रतिनिधित्व करता है) पढ़ता है।

(जब डिवाइस को विशेष उपयोग के लिए पकड़ा जाता है, तो केवल आपके आवेदन से ईवेंट दिखाई देंगे)।

+1

एक आकर्षण की तरह काम किया। धन्यवाद। – Catskul

+1

मुझे लगता है कि मुझे एक आरएफआईडी रीडर के लिए क्या चाहिए जो एक टैग से 10 अंकों की संख्या पढ़ता है और एक कीबोर्ड इनपुट के रूप में जानकारी प्रस्तुत करता है ताकि एक रास्पबेरी पीआई होम-ऑटोमेशन प्रोजेक्ट के साथ एक एक्सेस कंट्रोल डिवाइस के रूप में उपयोग किया जा सके - और अभी भी अन्य (डीबगिंग) उद्देश्यों के लिए कीबोर्ड/माउस/मॉनिटर के साथ लॉग इन करने में सक्षम हो। – SlySven

+0

कभी-कभी मुझे आश्चर्य होता है कि क्या हम सभी को बचाने के लिए पृथ्वी पर स्टैकएक्सचेंज भेजा गया था! क्या आपका प्रोजेक्ट ओपन सोर्स है? क्या आप स्रोतों को साझा करना चाहते हैं? मैं कस्टम मुद्रित क्यूआर-कोड का उपयोग कर कुछ चीजों को नियंत्रित करने के लिए सक्षम हूं। –

संबंधित मुद्दे