特定のアプリケーションがハードウェアにアクセスできないようにすることはできますか? 2 枚の PCI カードをインストールしており、合計 4 つの COM ポートがあります。残念ながら、この 1 つのアプリケーションが起動時に 4 つのポートすべてをブロックします。1 つの PCI デバイスのみを強制的に認識させ、他の 2 つの COM ポートを他のアプリケーション用に空けておくことはできますか? ライセンスの関係で、このオフライン ラボ コンピューターで Windows XP から移行できません。
答え1
この 1 つのアプリケーションが起動時にのみ検出されたすべての PCI をブロックすると仮定すると、最も簡単な解決策は、起動時にこれらのポートを有効にしないことです。
したがって、これらのポートが必要な場合にのみ有効にしてください。そうすれば、アプリケーションが新しく有効になったポートを検出しなくなるはずです。
使えるツールの一つは COM無効、 記述:
COMDisable ツールを使用すると、コンピューターで使用可能な COM ポートの一覧を表示できます。また、レジストリを手動で編集せずに、コンピューターの COM ポートを無効または有効にすることもできます。
(私はこのツールを使ったことがないので、どれほどうまく機能するかはわかりません。)
XP では、起動時にポートが検出されないように設定することもできます。
- ファイルから隠し属性、システム属性、読み取り専用属性を削除し
C:\Boot.ini
、バックアップコピーを作成します。 - メモ帳などのテキストエディタを使用して
Boot.ini
ファイルを開き、次のような行を追加します。/fastdetect:com3,com4
- 保存し
Boot.ini
てメモ帳を終了する - 隠し属性、システム属性、読み取り専用属性を復元する
- Windows をシャットダウンして再起動します。
ポートを再度有効にするには、デバイスを接続し、ポートを取得するデバイスのスキャンを実行します。
デブコン
スキャンやその他の操作に使用される可能性があります。ダウンロードしてください
.cab ファイル
そこから抽出することができますdevcon.exe
。
(注: テスト用の XP はありません。)