USBベンダーID /製品IDを変更する


9

Windows XPでは、USBデバイスのベンダーIDと製品IDを変更または偽装する簡単な方法はありますか?(対応する説明文字列を変更することもおそらく良いでしょう)

たとえば、特定のデバイスを期待する便利なプログラムがあるが、そのプログラムで動作する可能性のある非常に類似したデバイスがすでにあるのに、なぜ新しいデバイスを購入する必要があるのか​​わからないとします。

私は多くのグーグル操作を行ってきましたが、どうやらLinuxで実行できるため、LinuxのVMでWindowsを実行するのは偶然ですが、それは少し不便です。

回答:


6

これは、Windows DDK / WDKで提供されるユーティリティであるdevcon(ここにリストされている最も簡単なインストール方法)を使用して実行できる場合があります。リンクで、Windows XPに適したスタンドアロンバージョンを見つけることができます。

特に、devconsethwidコマンドは、探していることを実行できる場合があります。いくつかのチュートリアルについては、例のページ参照してください。

これがあなたの望みどおりに動作するかどうかはわかりませんが、独自のフィルタードライバーを作成しなくても、できるだけ近づくことができると強く感じています。あなたがいる場合行う独自のドライバを作成する必要性を、WDKをつかむと読みDEVCONの中にソースコードをSRC \セットアップ\ DEVCON

devconを他の方法で使用して目標を達成することもできますが、詳細がなければ、その方法を正確に説明することは困難です。幸運を!


これはHIDデバイスであり、ルート列挙sethwidされていないため、触れないでください:(
Hugh Allen

ええ、それも私のテストの様子ですが、構文が正しいかどうかはわかりませんでした。:/
quack quixote 2010

8

USBベンダーID /製品IDは、デバイスのファームウェアにハードコードされている可能性が高いため、ファームウェアをハッキングしないと変更できない場合があります。

ほとんどのファームウェアは変更から保護されているため、USBデバイスがブリックする可能性があります。

否定的に申し訳ありませんが、それは可能ではないと思います。


3
なぜ正解に反対票を投じるのですか?上記の受け入れられた答えはうまくいきませんでした。
harrymc

「それはできません」は、ソフトウェアの質問[1]に対する正解ではなく、完全に役に立たないことは言うまでもありません。デバイス自体を変更するように依頼するのではなく、アプリケーションのデバイスのビューを変更するだけです。[1]チューリングの意味で計算できないものでない限り。
ヒューアレン

2
あなたの質問は具体的に変更またはなりすましと述べました。チューリングの方法:Windowsの内部知識を持っているか、オペレーティングシステムにパッチを適用できる場合にのみ、質問に答えることができます。エラーを回避する手助けをしようとする人々に反対票を投じるのも良いネチケットではありません。
harrymc

これはソフトウェアの問題ではありません。;)//デバイスID(実際にデバイス自体に格納されている)を変更できたとしても、同じデバイスになります。「類似」タイプは同じタイプではありません。ほとんどの場合、PCソフトウェアが期待することを実行できません。
ダニエルB

1

私はあなたが求めていることを完全にはしていませんが、これはあなたに出発点を与えるかもしれません。また、私はこれまで、Vistaより前のバージョンでしかこのようなことをしていませんでした。

デバイスマネージャーとレジストリが文字列をハードウェアデバイスに関連付けるために使用する情報は、デバイスに付属の.INFファイルから初期化されます。幸い、.INFファイルは.INIファイルのように構造化されたテキストファイルなので、簡単に操作できます。既存のデバイスの「ID」を変更するには:

  1. WINDOWS\INFディレクトリに移動し、適切なファイルを見つけます。おそらく、デバイスに関連付けられた一意の文字列について、すべての.INFファイルを検索する必要があります。
  2. ファイルをバックアップします。
  3. テキストエディタで.INFファイルを開き、[Strings]セクションを見つけて、適切な文字列を変更します。
  4. デバイスマネージャーで、デバイスをアンインストールして再インストールします。

うまくいけば、アプリケーションはこの文字列のみを探します。一意のハードウェアIDを探している場合(これは.INFファイルでバスおよびバス\ VID_nnnn&PID_xxxxのようなハードウェアID番号として表示されます)、この手法は機能しません。


OEMドライバーを必要としない汎用デバイスです。(良いですが)INFファイルが見つかりません(すべてのINFファイルで製品IDを検索しました)。
ヒューアレン

@ヒュー・アレン-さらに詳しい情報を提供していただけますか?たとえば、どのデバイスがどのバスに接続されているか、アプリケーションはそれが予期されたデバイスではないことをどのように認識しますか?
mtrw

マウス。USB。分からない。
ヒューアレン

@ヒューアレン-他に推奨できる唯一のことは、Registry \ HKLM \ SYSTEM \ CurrentControlSetで既存のデバイスを探し、名前の文字列を見つけ、VID / PIDを見つけ、INFファイルでそれらのVID / PID番号を探すことです。ただし、だまそうとしているアプリがVID / PIDを直接使用している場合、この手法は機能しません。
mtrw 2010

@ヒューアレン-申し訳ありませんが、以前の質問のリンクをクリックしていませんでした。VID / PID番号を変更しようとしていることを理解できませんでした。私があなたに与えた情報は文字列を変更しただけでしょう。INFファイルはVID / PID番号に依存し、それらを定義しません。間違った道を案内して申し訳ありません。
mtrw 2010
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.