USB विक्रेता आईडी / उत्पाद आईडी बदलें


9

विंडोज एक्सपी के तहत, क्या यूएसबी डिवाइस के विक्रेता-और उत्पाद-आईडी को बदलने या बिगाड़ने का कोई आसान तरीका है? (संगत वर्णनात्मक तारों को बदलना शायद अच्छा भी होगा)

उदाहरण के लिए कहो कि एक उपयोगी कार्यक्रम है जो एक विशेष उपकरण की उम्मीद करता है, लेकिन आप यह नहीं देखते हैं कि जब आप कार्यक्रम के साथ काम करने की संभावना रखते हैं, तो आपको एक नया उपकरण क्यों खरीदना चाहिए।

मैंने बहुत सारे Googling किए हैं और जाहिरा तौर पर यह लिनक्स के तहत किया जा सकता है, इसलिए यह मेरे लिए लिनक्स के तहत एक वीएम में विंडोज चलाने के लिए होता है, लेकिन यह थोड़ा असुविधाजनक होगा।

जवाबों:


6

आप ऐसा कर सकते हैं devcon के साथ (यहाँ सूचीबद्ध करने के लिए आसान तरीके) , Windows DDK / WDK के साथ प्रदान की गई उपयोगिता। आप लिंक पर Windows XP के लिए एक स्टैंडअलोन संस्करण पा सकते हैं।

विशेष रूप से, DevCon के sethwid आदेश आप जो खोज रहे हैं ऐसा करने में सक्षम हो सकता है। कुछ ट्यूटोरियल के लिए उदाहरण पृष्ठ देखें ।

मुझे यकीन नहीं है कि यह वही करेगा जो आप चाहते हैं, लेकिन मुझे एक मजबूत एहसास है कि यह उतना ही करीब हो सकता है जितना कि आप अपने स्वयं के फ़िल्टर ड्राइवर को लिखे बिना प्राप्त करेंगे। यदि आप करते हैं , अपने खुद के ड्राइवर लिखने WDK हड़पने और पढ़ने की जरूरत DevCon में sourcecode src \ सेटअप \ DevCon

आप अपने लक्ष्य को पूरा करने के लिए अन्य तरीकों से भी devcon का उपयोग करने में सक्षम हो सकते हैं , लेकिन अधिक विवरण के बिना यह कहना मुश्किल है कि कैसे। सौभाग्य!


यह एक छिपाई डिवाइस है और रूट-एन्यूमरेटेड नहीं है, इसलिए sethwidइसे स्पर्श नहीं किया जाएगा :(
ह्यूग एलन

हाँ, यह वही है जो मेरे परीक्षण की तरह लग रहा था, लेकिन मुझे यकीन नहीं था कि मैं वाक्यविन्यास सही हो रहा था। : /
क्वैक क्विक्सोट

8

USB विक्रेता-आईडी / उत्पाद-आईडी डिवाइस के फर्मवेयर में हार्ड-कोडित होने की संभावना है, और इसलिए फर्मवेयर को हैक किए बिना अपरिवर्तनीय हो सकता है।

जैसा कि अधिकांश फर्मवेयर परिवर्तनों के खिलाफ सुरक्षित है, यह यूएसबी डिवाइस को ईंट करने की संभावना है।

क्षमा करें नकारात्मक होने के लिए, लेकिन मुझे नहीं लगता कि यह संभव है।


3
सही उत्तर को क्यों छोड़ें? ऊपर दिए गए स्वीकृत जवाब से काम नहीं चला।
harrymc

"यह नहीं किया जा सकता है" कभी नहीं एक सॉफ्टवेयर प्रश्न [1] का सही उत्तर, पूरी तरह से बेकार उल्लेख करने के लिए नहीं। मैं डिवाइस को स्वयं बदलने के लिए नहीं कह रहा था, बस एक एप्लिकेशन का दृश्य। [१] जब तक कि यह ट्यूरिंग अर्थों में अन-कम्प्यूटेशनल नहीं है।
ह्यूग एलेन

2
आपके प्रश्न ने विशेष रूप से परिवर्तन या स्पूफ कहा है। ट्यूरिंग तरीका: आपने जो पूछा है वह केवल तभी किया जा सकता है जब किसी के पास विंडोज का ज्ञान हो और / या ऑपरेटिंग सिस्टम को पैच कर सकता हो। त्रुटियों से बचने में आपकी मदद करने की कोशिश कर रहे लोगों को नीचा दिखाना भी अच्छा नहीं है।
harrymc

हालांकि यह एक सॉफ्टवेयर सवाल नहीं है। ;) // भले ही डिवाइस आईडी को बदलना संभव था (जो वास्तव में डिवाइस पर ही संग्रहीत है), यह अभी भी एक ही डिवाइस होगा। "इसी प्रकार के" प्रकार नहीं है एक ही प्रकार के। यह सबसे अधिक संभावना नहीं है कि पीसी सॉफ्टवेयर क्या करने की उम्मीद करता है।
डैनियल बी

1

मैंने वह नहीं किया जो आप पूछ रहे हैं, लेकिन यह आपको एक शुरुआती बिंदु दे सकता है। इसके अलावा, मैंने केवल इस तरह का सामान प्री-विस्टा संस्करणों पर किया है।

डिवाइस मैनेजर और रजिस्ट्री का उपयोग हार्डवेयर डिवाइस के साथ तार को जोड़ने के लिए किया जाता है। डिवाइस के साथ प्रदान की गई .INF फ़ाइल से आरंभ किया जाता है। सौभाग्य से, .INF फाइलें पाठ फ़ाइलें होती हैं, जैसे .INI फाइलें, ताकि वे आसानी से काम कर सकें। मौजूदा डिवाइस की "पहचान" बदलने के लिए:

  1. WINDOWS\INFनिर्देशिका पर जाएं और सही फ़ाइल ढूंढें। संभवतः आपको डिवाइस से जुड़ी एक अद्वितीय स्ट्रिंग के लिए सभी .INF फ़ाइलों के माध्यम से खोज करने की आवश्यकता होगी।
  2. फ़ाइल का बैकअप लें।
  3. एक पाठ संपादक के साथ .INF फ़ाइल खोलें, [स्ट्रिंग्स] अनुभाग ढूंढें, और उपयुक्त स्ट्रिंग बदलें।
  4. डिवाइस मैनेजर में, डिवाइस को अनइंस्टॉल और रीइंस्टॉल करें।

उम्मीद है, आपका आवेदन केवल इस स्ट्रिंग की तलाश में है। यदि यह अद्वितीय हार्डवेयर आईडी की तलाश में है (आप इसे .INF फ़ाइल में बस और हार्डवेयर आईडी नंबर जैसे बस \ VID_nnnn और PID_xxxx के रूप में देखेंगे) तो यह तकनीक काम नहीं करेगी।


यह एक जेनेरिक डिवाइस है जिसे ओईएम ड्राइवरों की आवश्यकता नहीं है। (जो अच्छा है, लेकिन) मैं इसके लिए एक INF फ़ाइल नहीं ढूँढ सकता (और मैंने सभी INF फ़ाइलों में इसके उत्पाद आईडी की खोज की)।
ह्यूग एलन

@ हेग एलन - क्या आप कुछ और जानकारी प्रदान कर सकते हैं? उदाहरण के लिए, यह किस प्रकार की डिवाइस है, यह किस बस पर है, एप्लिकेशन कैसे पहचानता है कि यह अपेक्षित डिवाइस नहीं है?
mtrw

चूहा। यु एस बी। पता नहीं।
ह्यूग एलन

@ ह्यूग एलन - केवल एक और चीज जिसकी मैं सिफारिश कर सकता हूं, वह आपके मौजूदा डिवाइस की तलाश कर रही है रजिस्ट्री \ HKLM \ SYSTEM \ CurrentControlSet में, नाम स्ट्रिंग ढूंढना, VID / PID खोजना, और INF फ़ाइलों में उन VID / PID नंबर की तलाश करना। हालाँकि, यदि आप जिस ऐप को मूर्ख बनाने की कोशिश कर रहे हैं, वह सीधे VID / PID का उपयोग करता है, तो यह तकनीक काम नहीं करेगी।
mtrw

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