ubah id vendor / id produk USB


9

Di bawah Windows XP, apakah ada cara mudah untuk mengubah atau memalsukan vendor dan id produk dari perangkat USB? (mengubah string deskriptif yang sesuai mungkin juga akan baik)

Katakan misalnya ada program yang berguna yang mengharapkan perangkat tertentu tetapi Anda tidak melihat mengapa Anda harus membeli yang baru ketika Anda memiliki perangkat yang sangat mirip yang kemungkinan akan bekerja dengan program tersebut.

Saya telah melakukan banyak Googling dan ternyata itu bisa dilakukan di Linux sehingga terpikir oleh saya untuk menjalankan Windows di VM di Linux, tapi itu akan sedikit merepotkan.

Jawaban:


6

Anda mungkin dapat melakukan ini dengan devcon (cara termudah untuk menginstal yang tercantum di sini) , sebuah utilitas yang disediakan dengan Windows DDK / WDK. Anda dapat menemukan versi mandiri yang cocok untuk Windows XP di tautan.

Secara khusus, devcon 's sethwid perintah mungkin dapat melakukan apa yang Anda cari. Lihat halaman Contoh untuk beberapa tutorial.

Saya tidak yakin ini akan melakukan persis apa yang Anda inginkan, tapi saya punya perasaan kuat bahwa mungkin sedekat yang Anda dapatkan tanpa menulis driver filter Anda sendiri. Jika Anda lakukan perlu menulis driver Anda sendiri, ambil WDK dan membaca devcon source di src \ setup \ devcon .

Anda juga dapat menggunakan devcon dengan cara lain untuk mencapai tujuan Anda, tetapi tanpa perincian lebih lanjut, sulit untuk mengatakan dengan tepat caranya. Semoga berhasil!


Ini adalah perangkat HID dan bukan root-enumerated, jadi sethwidtidak akan menyentuhnya :(
Hugh Allen

ya, seperti itulah pengujian saya juga, tetapi saya tidak yakin saya mendapatkan sintaks yang benar. : /
quack quixote

8

Vendor-id / produk-id USB kemungkinan besar akan dikodekan dalam firmware perangkat, dan karenanya mungkin tidak dapat diubah tanpa meretas firmware.

Karena sebagian besar firmware terlindungi dari perubahan, ini kemungkinan akan merusak perangkat USB.

Maaf menjadi negatif, tapi saya pikir itu tidak mungkin.


3
Mengapa downvote jawaban yang benar? Jawaban yang diterima di atas tidak berhasil.
harrymc

"Tidak dapat dilakukan" tidak pernah merupakan jawaban yang benar untuk pertanyaan perangkat lunak [1], belum lagi sama sekali tidak membantu. Saya tidak meminta untuk mengubah perangkat itu sendiri, hanya pandangan aplikasi itu. [1] kecuali itu adalah sesuatu yang tidak dapat dihitung dalam arti Turing.
Hugh Allen

2
Pertanyaan Anda secara khusus mengatakan perubahan atau spoof. Cara Turing: Apa yang Anda minta hanya dapat dilakukan jika seseorang memiliki pengetahuan Windows dan / atau dapat menambal sistem operasi. Netiket juga tidak bagus untuk menurunkan orang yang mencoba membantu Anda menghindari kesalahan.
harrymc

Ini bukan pertanyaan perangkat lunak. ;) // Sekalipun dimungkinkan untuk mengubah ID perangkat (yang memang disimpan pada perangkat itu sendiri), itu masih akan menjadi perangkat yang sama. Tipe "Serupa" bukan tipe yang sama . Kemungkinan besar tidak akan dapat melakukan apa yang diharapkan oleh perangkat lunak PC itu.
Daniel B

1

Saya belum melakukan apa yang Anda minta, tetapi ini mungkin memberi Anda titik awal. Juga, saya hanya pernah melakukan hal semacam ini pada versi pra-Vista.

Informasi yang digunakan Pengelola Perangkat dan Registri untuk mengaitkan string dengan perangkat perangkat keras diinisialisasi dari file .INF yang disediakan bersama perangkat. Untungnya, file .INF adalah file teks yang terstruktur seperti file .INI sehingga mudah digunakan. Untuk mengubah "identitas" perangkat yang ada:

  1. Buka WINDOWS\INFdirektori dan temukan file yang tepat. Mungkin Anda harus mencari semua file .INF untuk string unik yang terkait dengan perangkat.
  2. Cadangkan file.
  3. Buka file .INF dengan editor teks, temukan bagian [Strings], dan ubah string yang sesuai.
  4. Di Pengelola Perangkat, hapus instalasi dan instal ulang perangkat.

Semoga aplikasi Anda hanya mencari string ini. Jika mencari ID perangkat keras yang unik (Anda akan melihatnya dalam file .INF sebagai nomor id bus dan perangkat keras seperti bus \ VID_nnnn & PID_xxxx) maka teknik ini tidak akan berfungsi.


Ini adalah perangkat generik yang tidak memerlukan driver OEM. (yang bagus, tapi) Saya tidak dapat menemukan file INF untuk itu (dan saya mencari ID produknya di semua file INF).
Hugh Allen

@ Halo Allen - dapatkah Anda memberikan lebih banyak info? Misalnya, perangkat apa, di bus mana, bagaimana aplikasi mengenali bahwa itu bukan perangkat yang diharapkan?
mtrw

mouse. USB. Tidak tahu
Hugh Allen

@Hugh Allen - satu-satunya hal yang bisa saya rekomendasikan adalah mencari perangkat Anda yang ada di Registry \ HKLM \ SYSTEM \ CurrentControlSet, menemukan string nama, menemukan VID / PID, dan mencari nomor VID / PID dalam file INF. Namun, jika aplikasi yang Anda coba tipu menggunakan VID / PID secara langsung, teknik ini tidak akan berfungsi.
mtrw

@Hugh Allen - Maaf, saya belum mengklik tautan di pertanyaan Anda sebelumnya. Saya tidak mengerti Anda ingin mengubah nomor VID / PID. Info yang saya berikan kepada Anda hanya akan mengubah string. File INF bergantung pada nomor VID / PID, bukan yang mendefinisikannya. Maaf membuat Anda salah jalan.
mtrw
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.