PowerShellでタスクバーをカスタマイズする方法:Windows 11の設定と管理用XML

PowerShellは、Windowsの情報を調べたり、目的の設定画面をすばやく開いたり、管理用の構成ファイルを確認したりする用途に役立ちます。一方、タスクバーの外観を変更するために、内部レジストリ値を推測して書き換える必要はありません。この記事では、Windows 11の標準設定とPowerShellを組み合わせて、位置・色・ピン留め・複数画面の表示を整える方法を紹介します。

対象と確認日:2026年10月20日時点のWindows 11を中心に説明します。一般ユーザー向けの操作と、組織の管理者向けのXML配布は分けて扱います。Windows 10用の設定名やスクリプトを、そのままWindows 11に流用しないでください。

目次

最初に確認:タスクバーの位置とアイコンの配置は別の設定

Windows 11で「タスクバーは画面下にしか置けない」と一律に説明するのは、現在の仕様に合いません。2026年8月27日のKB5120998では、24H2・25H2向けに、画面の上・下・左・右へ移動する標準機能の段階的な提供が始まっています。同じ更新で小さいタスクバーも追加されました。配信は段階的なので、更新の有無だけで全端末に同じ項目が表示されるとは限りません。

8月の改善は9月8日のKB5124008に含まれ、その更新は10月13日のKB5127648にも含まれます。古いプレビュー更新を機能のためだけに探して入れるのではなく、利用中の版と組織の更新方針に合った更新状況を確認してください。なお、24H2のHome・Proは2026年10月13日が最後の月例更新です。機能の確認と併せて、サポート対象の版への移行も確認します。

  • 位置:タスクバー全体を、画面のどの辺に置くか。
  • アイコンの配置:タスクバー内のスタートボタンなどを、中央または左などの選択肢に合わせること。
  • サイズ:対応端末でタスクバーやアイコンを小さくすること。位置・配置とは別の項目です。

PowerShellでWindowsの情報と実行ポリシーを確認する

Windows上の通常のPowerShellウィンドウを開きます。以下の基本的な照会と設定画面の起動は、Windows PowerShell 5.1またはWindows上のPowerShell 7を想定しています。管理者としての起動を前提にしません。組織の制限で操作できない場合は、その制限を回避せず管理者に確認してください。

# 実行中のPowerShellのバージョンを表示
$PSVersionTable.PSVersion

# ローカルPCのOS情報を読み取る
Get-CimInstance -ClassName Win32_OperatingSystem |
    Select-Object Caption, Version, BuildNumber

# バージョン、エディション、完全なOSビルドは「バージョン情報」でも確認
Start-Process -FilePath 'ms-settings:about'

Get-CimInstanceはOS情報の照会です。ここで得たビルド番号だけで、新しい設定項目が有効かどうかまでは判定できません。出力の項目はWin32_OperatingSystemの定義で確認できます。

# 実行ポリシーをスコープ別に読む。設定は変更しない
Get-ExecutionPolicy -List

この記事のコマンドは、内容を確認してPowerShellに直接入力できます。Restrictedでも個別のコマンドは許可されますが、スクリプトファイルの実行は制限されます。.ps1へ保存して実行する場合は、署名や組織の運用ルールに従ってください。カスタマイズの準備として実行ポリシーを一律に緩める手順は不要です。詳しくはMicrosoftの実行ポリシーの説明を参照してください。

タスクバーの位置・配置・サイズを変更する

# 画面を開くだけ。位置やサイズはまだ変更しない
Start-Process -FilePath 'ms-settings:taskbar'
  1. 「個人用設定」→「タスクバー」で「タスクバーの動作」を開きます。
  2. 「Taskbar position(タスクバーの位置)」が表示される端末では、上・下・左・右から目的の位置を選びます。
  3. アイコンを左寄せにしたいだけなら、位置ではなく「タスクバーの配置」の選択肢を確認します。
  4. 小さくしたい場合は、対応端末の「Taskbar size(タスクバーのサイズ)」で小さいサイズを選びます。表示名はWindowsの言語や更新状況によって異なります。

位置とサイズの追加機能のリリースノートでは、検索ボックスと小さいタスクバーは上・下の位置でのみ対応するとされています。左右に置いたときに同じ表示にならなくても、直ちに故障とは判断しません。項目が見つからなければ、下記の更新履歴を開き、Windowsの版、更新状況、段階的な提供状況、組織の管理設定を確認してください。

# 更新履歴のページを開く。更新のインストールは開始しない
Start-Process -FilePath 'ms-settings:windowsupdate-history'

StuckRects3のバイト配列を固定の添字で書き換える方法は、Windowsの版や内部構造への依存を隠してしまいます。新しい標準機能がある端末では設定画面を使い、未提供の端末で内部値を作って機能を有効化しようとしないでください。

タスクバーの色と透明効果を変更する

Start-Process -FilePath 'ms-settings:personalization-colors'
  1. 「個人用設定」→「色」で、モードとアクセントカラーを選びます。
  2. 「スタートとタスクバーにアクセントカラーを表示する」を有効にします。選べない場合は、Windowsのモードをダーク、またはWindows側をダークにしたカスタム設定にして確認します。
  3. 「透明効果」を好みに応じてオン・オフにします。元に戻す場合も同じ画面で切り替えます。

透明効果は、背景に半透明とぼかしを加える標準機能です。タスクバーを完全に透明にしたり、任意の透明度へ数値指定したりする機能ではありません。見え方はテーマなどにも左右されます。詳しくはWindowsの色と透明効果の設定を参照してください。

ピン留め・ウィジェット・スタートの関連設定

  • アプリの追加:起動中のアプリをタスクバーで右クリックし、「タスクバーにピン留めする」を選びます。
  • 解除と並べ替え:ピン留め済みのアイコンを右クリックして解除します。並び順はドラッグして変更できます。
  • ウィジェット:タスクバー設定の「タスクバー項目」で表示を切り替えます。Windows 10の「ニュースと関心事項」と、Windows 11の「ウィジェット」を同じレジストリ設定として扱わないでください。

個人のピン留め操作はMicrosoftのタスクバー設定手順に沿って行えます。組織から配布されたピンは再適用される場合があるため、解除しても戻るときは後述のポリシー管理を確認します。

# スタートの関連設定を開く
Start-Process -FilePath 'ms-settings:personalization-start'

スタートメニューの関連項目は、現在の画面に表示されている設定で調整します。旧来のライブタイル向けと称した内部レジストリ値を作成して、Windows 11のスタート設定として使わないでください。

システムトレイとマルチモニターを整える

タスクバー設定の「その他のシステムトレイアイコン」などで表示するアイコンを選びます。アイコンを隠すことと、アプリの通知自体を停止することは別です。通知を調整したい場合は、次のコマンドで通知設定を開きます。

Start-Process -FilePath 'ms-settings:notifications'

複数のディスプレイを使う場合は、タスクバーの動作で「タスクバーをすべてのディスプレイに表示する」を確認します。アプリをどの画面のタスクバーに表示するかについては、接続状態に応じて表示される選択肢から選びます。各画面を完全に独立した設定にできるとは限りません。

# ディスプレイの認識と配置を確認する画面
Start-Process -FilePath 'ms-settings:display'

設定が見当たらない場合は、外部画面が認識されているか、複製ではなく拡張で使用しているかも確認します。存在を確認していないマルチモニター用のレジストリキーを、新規作成して対応する方法は取りません。

繰り返し使える設定画面ランチャー

よく使う画面をまとめたい場合は、次の関数をPowerShellに入力できます。指定できる名前を限定し、固定のURIだけを開く例です。URIはMicrosoftのms-settings一覧に基づきます。これは設定画面へのショートカットであり、値を自動変更する関数ではありません。

function Open-WindowsPersonalization {
    param(
        [ValidateSet('Taskbar', 'Colors', 'Start', 'Notifications', 'Display', 'UpdateHistory')]
        [string]$Page = 'Taskbar'
    )

    if ($env:OS -ne 'Windows_NT') {
        throw 'This function requires Windows.'
    }

    $pages = @{
        Taskbar       = 'ms-settings:taskbar'
        Colors        = 'ms-settings:personalization-colors'
        Start         = 'ms-settings:personalization-start'
        Notifications = 'ms-settings:notifications'
        Display       = 'ms-settings:display'
        UpdateHistory = 'ms-settings:windowsupdate-history'
    }

    Start-Process -FilePath $pages[$Page] -ErrorAction Stop
}

# 必要な画面を1つ選んで開く
Open-WindowsPersonalization -Page Taskbar

入力した関数はそのPowerShellセッション内で使えます。例えば色の画面なら、呼び出しのTaskbarをColorsに変えます。画面が開かない場合は、Windowsの「設定」から手動で移動してください。URIの利用可否はWindowsの版や構成にも依存します。

組織の管理者向け:ピン留めアプリをXMLで構成する

複数端末に共通のピンを配布する場合は、Microsoftのタスクバー用XMLとポリシー配布の手順を利用します。これは個人の見た目を変える設定とは別の管理作業です。ここではアプリのピン留めを定義し、位置・色・透明度の変更には使いません。配布前に対象Windows版、エディション、管理方式、既存のStartレイアウトへの影響を確認してください。

アプリIDを調べる際は、対象ユーザーのWindows PowerShell 5.1で次を実行します。Get-StartAppsによるAUMIDの確認は、スタートメニューに載るアプリの名前とIDを調べる方法です。出力は現在のタスクバーのピン一覧でも、全アプリの完全な一覧でもありません。

Get-StartApps |
    Sort-Object Name |
    Select-Object Name, AppID

次は「設定」とエクスプローラーを指定するXMLの例です。対象ユーザーにアプリが存在することとIDを確認し、必要なアプリへ差し替えます。ファイルを作成しただけではタスクバーに適用されません。

<?xml version="1.0" encoding="utf-8"?>
<LayoutModificationTemplate
    xmlns="http://schemas.microsoft.com/Start/2014/LayoutModification"
    xmlns:defaultlayout="http://schemas.microsoft.com/Start/2014/FullDefaultLayout"
    xmlns:taskbar="http://schemas.microsoft.com/Start/2014/TaskbarLayout"
    Version="1">
  <CustomTaskbarLayoutCollection>
    <defaultlayout:TaskbarLayout>
      <taskbar:TaskbarPinList>
        <taskbar:UWA AppUserModelID="windows.immersivecontrolpanel_cw5n1h2txyewy!microsoft.windows.immersivecontrolpanel" />
        <taskbar:DesktopApp DesktopApplicationID="Microsoft.Windows.Explorer" />
      </taskbar:TaskbarPinList>
    </defaultlayout:TaskbarLayout>
  </CustomTaskbarLayoutCollection>
</LayoutModificationTemplate>

この例は既定のピンを置き換えるPinListPlacement="Replace"を指定していません。Replaceの指定は既定ピンを外すため、意図せず追加しないでください。通常、ポリシーで指定されたピンは更新時に再適用されます。ユーザーによる解除を維持したい場合は、対応する更新とPinGenerationの条件を公式手順で確認します。

保存したXMLの基本的な読み取り確認は、PowerShellでもできます。次の例のパスを自分のファイルへ変更して実行してください。

# 既存ファイルを読むだけ。ポリシーの適用はしない
$path = Join-Path $HOME 'TaskbarLayoutModification.xml'
[xml]$layout = Get-Content -LiteralPath $path -Raw -ErrorAction Stop
$layout.DocumentElement.LocalName

XMLとして読み取れれば、上の例ではLayoutModificationTemplateと表示されます。ただし、これは整形式かどうかとルート名の確認にすぎず、XSDへの適合、アプリIDの有効性、端末での適用成功は保証しません。検証用端末で確認したうえで、承認済みのIntune/CSP、プロビジョニングパッケージ、またはGPOの手順で配布します。Windows 11では、Import-StartLayoutによるタスクバーレイアウトのプロビジョニングはサポートされていません。

変更後の確認と元に戻す方法

  • 変更前の項目をメモし、位置、色、表示項目を一度に変えず、1項目ずつ確認します。
  • 個人設定を戻す場合は、同じ設定画面で元の選択肢へ戻します。標準設定の変更のためにExplorerを強制終了するコマンドは使いません。
  • 設定が戻る場合は、管理ポリシーや配布設定を確認します。組織管理のXMLを撤回する場合も、配布した管理方式で変更し、元のピンが自動復元されると決めつけず検証します。
  • 位置やサイズの項目がない場合は、機能の提供状況を確認します。記事のコマンドが失敗したことと、新機能がまだ端末に提供されていないことを分けて考えます。

まとめ

PowerShellを使うと、環境の照会や目的の設定画面への移動を手早く行えます。個人のタスクバーは標準の設定画面で調整し、組織共通のピン留めはXMLと管理ポリシーで扱うと、用途と影響を整理できます。新しい位置・サイズ設定は提供状況を確認し、古いレジストリ例や全端末で同じ結果になるという前提に頼らず進めてください。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次