私は Fallout 3 をプレイするのが好きですが、これは通常でもバグが多く、いくつかの MOD を追加するとさらに多くなります。言うまでもなく、クラッシュが頻繁に発生します。クラッシュは対処できますが、唯一の問題はクラッシュが発生すると、サウンド カードが無限ループ スタイルの再生に巻き込まれることです。
デバイス マネージャーでデバイスのオン/オフ (無効/有効) を切り替えることで、ループするオーディオを停止できますが、デバイス マネージャーに毎回アクセスするのは面倒です。そのため、このプロセスを半自動化したいと考えています。
バッチ スクリプトを使用してデバイスのオン/オフを切り替える方法はありますか? そうすれば、デスクトップにスクリプトを配置して、サウンド カードがループし始めたときに実行することができます。
答え1
Windows 10 では を使用できますwmic
。私はPNPDeviceID
where 句で を使用することを好みます。まず正確な値をクエリできます。
wmic path Win32_PnPEntity where "PNPDeviceID like '%VEN%'"
入手したら、次を使用します。
wmic path Win32_PNPEntity where "PNPDeviceID='yourPNPDeviceIDname'" call disable
wmicに関する非常に役立つ情報を見つけましたここ
答え2
and31415 が提供してくれたリンクのおかげで、デバイス コンソール (DevCon) ユーティリティを使用して McGyver 方式で解決策を見つけることができました。
ツールの入手方法についての手順をコピーしましたこの答え:
デベコンは、デバイスに関する詳細情報を表示し、コマンド ラインからデバイスを検索および操作できるコマンド ライン ツールです。DevCon は、ローカル コンピューター上のデバイスを有効化、無効化、インストール、構成、および削除し、ローカル コンピューターとリモート コンピューター上のデバイスに関する詳細情報を表示します。
.cab
オペレーティング システムに応じて適切なパッケージをダウンロードします。アーカイブを開き
.cab
、 という名前のファイルを抽出しますfil[some letters and numbers]
。サイズは約 80 KB です。- 名前を に変更します
devcon.exe
。
このツールを使用すると、サウンドカードのハードウェア ID が何であるかを把握し、それを使用してデバイスを有効または無効にすることができます。デバイスを切り替えるだけなので、バッチ ファイルは次のようになります。
devcon.exe disable "PCI\VEN_13F6&DEV_8788&SUBSYS_85221043"
devcon.exe enable "PCI\VEN_13F6&DEV_8788&SUBSYS_85221043"
この長めの文字列はハードウェア デバイス ID です。これを見つけるために、DevCon のfindall
コマンドを使用し、出力をテキスト ファイルにパイプして簡単に検索できるようにしました。
devcon.exe findall * > C:\output.txt
デバイス名を検索して、必要な文字列をコピーしました。
注記:残念ながら、バッチを実行するには管理者権限が必要ですが、これは小さな問題です(そして、私が解決できる問題です)。後の段階で解決する)。しかし、今のところ、これは私にとってはうまく機能しています。