Windowsでサインイン後デスクトップが表示される前に時折割り込んで表示されるMicrosoft関係のPR画面。
この表示を止めたいと考えて、GUIとコマンドの両面で設定できるようにしたいと考えました。
止めたいPRやCMの画面
Windows10からOSにMicrosoftのPRというかCMのようなものが動作の各所に挿入されるようになりました。
前々から個人的に止めたいと思っていたのですが、なんとなくそのまま使っていて現在に至っています。
今回は、Windows起動からサインイン直後に、デスクトップが表示される前に割り込んでくるCM画面です。
一例として、
こういうのです。OneDriveを積極的に使うためにMicrosoftアカウントへのサインインをやたらと推奨してきます。
で、Microsoftアカウントにサインインしていたら、今度はMicrosoft 365のサブスクリプション契約を勧めてくるのです。
全部適切に、不要とかやらない、みたいな選択肢を選ぶことで、
この画面になって、ようやくデスクトップが開き、PCを使えるようになります。
この操作している時間、不要だと思いました。
通知とアクションの項目を無効にする(GUI)
Windows起動直後に、デスクトップが表示される前に割り込んでくるCM画面はWindowsの「設定」画面からオフにできるようです。
Windowsの「設定」から「システム」を選択して、表示される画面の左リストから「通知とアクション」を選択します。
表示された画面から、この図の
- 新機能とおすすめを確認するために、更新の後と、サインイン時にときどき、[Windowsへようこそ]の情報を表示する
- Windowsを最大限に活用するためのデバイス設定の完了方法を提案する
- Windowsを使う上でのヒントやお勧めの方法を取得する
この三点にチェックが付いていれば外して、各項目をオフにします。
この設定自体は結構前から意識してオフにするようにしていたのですが、レジストリによるコマンドラインからの設定方法はないものかとちょくちょく調べていました。
通知とアクションの項目を無効にする(CUI)
本記事の主な動機となったのがこの部分です。キッティングの際にコマンドでこれが実行できるようになれば、バッチファイルで一括処理の中に含めることができるので、GUIで画面を開いて手作業するステップが一つ減ります。
コマンドプロンプトから実行する場合には、
--------------------------------------------------------------
reg add "HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\CloudContent" /v "DisableWindowsSpotlightWindowsWelcomeExperience" /t REG_DWORD /d "1" /f
--------------------------------------------------------------
このように実行します。
設定確認の場合にはreg queryで
--------------------------------------------------------------
reg query "HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\CloudContent" /t REG_DWORD /v "DisableWindowsSpotlightWindowsWelcomeExperience"
--------------------------------------------------------------
値「1」であることを確認できれば無効になっています。
レジストリエディタで設定する場合には、
HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\CloudContent
※ちなみに画面は設定後の画面です。
を開いて、「DisableWindowsSpotlightWindowsWelcomeExperience」をREG DWORD(32bit)で作成し値を「1」にします。
このキーを設定した後で、「設定」画面から「通知」を確認してみると、
このように、チェックボックスが外れた状態で設定がオフになっていることを確認出来ました。
これも、キッティングの際に実行するバッチファイルにコマンドとして挿入して、初期設定としてしまいたいところです。
ただし、この設定自体はコンシューマーエクスペリエンスの無効化と違って「HKEY_CURRENT_USER」での設定となるため、サインインするユーザ毎(ユーザプロファイル毎)に実行する必要がある点は注意が必要です。
追記:(2024-03-04)
窓の杜に同じ目的の記事が掲載されていました。
Windows起動時に「PC のセットアップを完了しましょう」が全画面で出て鬱陶しい! - やじうまの杜 - 窓の杜
一部抜粋すると、PowerShellでコマンド実行してWindows通知設定の「Windowsを最大限に活用し、このデバイスの設定を完了する方法を提案する」の項を無効化するコマンドレットのようです。
--------------------------------------------------------------
# PowerShell の場合
New-Item -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\UserProfileEngagement"
New-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\UserProfileEngagement" -Name "ScoobeSystemSettingEnabled" -Value 0 -Force
--------------------------------------------------------------
良い感じです。(追記ここまで)
不要な通知の無効化で
今回、PCキッティングの際にユーザが操作に迷うような現象を抑制するために調べたものです。
MicrosoftのPR/CM画面が表示されないようにしたり、インストールした覚えがないアプリが勝手に追加されたり、といった現象を抑制することができると思われます。
ただ、こういった設定はWindows7やWindows8.1の頃にはなかったのになぁ…と思いながら、最近のWindowsはアップグレードを(ハードウェアが対応していれば)無償化していることと関係あるのかなぁと思ったところもあります。