2024-11-18
ネイティブのWindowsが動作する最後のIntel Macbook 2020。
https://support.apple.com/ja-jp/111991
BootCampを利用すれば最新のWindows 11 Professionalを入れることができる。そのままWindows Updateを自動でさせておくと、その中でも最新バージョンである「23H2」に自動でアップデートされる。
しかしここで大きな問題が発生する。最新版にするとBluetoothが機能しなくなるのだ。いろいろ調べた結果、システム終了時にBluetoothドライバを削除すれば、次回起動時復活することがわかった。以下、手順。
1、Windowsのバージョン確認
コントロールパネル→システムとセキュリティ→システムを表示。Windowsバージョンが11 Pro + 23H2であることを確認。
2、Bluetoothが機能していない(ドライバーエラー)の確認
コントロールパネル→ハードウェアとサウンド→デバイス マネージャーを開く。
一番先頭にあったはずの「Bluetooth」が居なくなっており、「システム デバイス」→「Broadcom Bluetooth PCIe Controller」がビックリマークで、「このデバイスは正常に動作していません」となっていることを確認。
3、Bluetoothドライバのデバイス インスタンス パスをコピーする
ここから復旧作業に入る。上記デバイスのプロパティ画面でそのまま「詳細」タブを開き「プロパティ」プルダウンでデバイスの説明ではなく「デバイス インスタンス パス」を選ぶ。すると、値としてIDが表示されるので、この文字列をコピー、メモしておく。
4、PowerShellスクリプト「RemoveSystemBT.ps1」を作成する
このデバイスを削除するスクリプトを書く。ここではCドライブ直下にRemoveSystemBT.ps1というようなスクリプトを作成し設置する。
BOOTCAMP(C:)\RemoveSystemBT.ps1
pnputil /remove-device "PCI\VEN_14E4&DEV_5FA0&SUBSYS_0870106B&REV_04\400000FFFF00000001"
上記ID文字列は、3、で取得したデバイス インスタンス パスに置き換える。
5、実行スクリプト「RemoveSystemBT.cmd」を作成する
上記で作成したスクリプトを実行するためのコマンドスクリプトを書く。ここではCドライブ直下にRemoveSystemBT.cmdというようなスクリプトを作成し設置する。
BOOTCAMP(C:)\RemoveSystemBT.cmd
powershell -ExecutionPolicy RemoteSigned %~DP0\RemoveSystemBT.ps1
6、ローカル グループ ポリシー エディタでスクリプトを自動実行登録する
スタートボタン→アプリ、設定、ドキュメントの検索ボックスに「gpedit」と入力する。すると最も一致する結果に「グループ ポリシーの編集」と出るので、クリックしてローカル グループ ポリシー エディタを開く。
左タブ「Windowsの設定」のツリーを展開する。そうすると「スクリプト(スタートアップ/シャットダウン)」が出てくるのでクリック。
「シャットダウン」をダブルクリックしてシャットダウンのプロパティを開いて「追加...」でさきほど作成したRemoveSystemBT.cmdのほうを登録する。すると名前のところにC:\RemoveSystemBT.cmdが追加されているはず。「OK」で保存、閉じる。
7、再起動後、デバイスマネージャーでBluetoothが復活していることを確認する
これで、再起動やシャットダウンすると、終了前に上記スクリプトが自動実行されて、次回起動時Bluetoothが復活しているはずである。
動画での説明はこちら。
https://youtu.be/uyoeKD9543I
※本記事内容の無断転載を禁じます。
ご連絡は以下アドレスまでお願いします★
Windowsのデスクトップ画面をそのまま配信するための下準備
WindowsでGPUの状態を確認するには(ASUS系監視ソフトの自動起動を停止する)
CORESERVER v1プランからさくらインターネットスタンダートプランへ引っ越しメモ
さくらインターネットでPython MecabをCGIから使う
さくらインターネットのPHPでAnalytics-G4 APIを使う
インクルードパスの調べ方
【Git】特定ファイルを除外する.gitignore
【Ubuntu/Debian】NVIDIA関係のドライバを自動アップデートさせない
【Python】Spacyを使用して文章から出発地と目的地を抜き出す
【Windows10】リモートデスクトップ間のコピー&ペーストができなくなった場合の対処法
Windows11+WSL2でUbuntuを使う【2】ブリッジ接続+固定IPの設定
【C/C++】小数点以下の切り捨て・切り上げ・四捨五入
Windows版Google Driveが使用中と言われアンインストールできない場合
GitLabにHTTPS経由でリポジトリをクローン&読み書きを行う
【Apache】サーバーに同時接続可能なクライアント数を調整する
VirtualBoxの仮想マシンをWindows起動時に自動起動し終了時に自動サスペンドする
【PHP】Mail/mimeDecodeを使ってメールの中身を解析(準備編)
【Linux】iconv/libiconvをソースコードからインストール