レジストリを手動で編集する代わりに、PowerShellスクリプトを使用してこの設定を自動化することも可能です。より安全で再現性の高い方法と言えます。まず、エクスプローラーで法人用OneDriveの正確なフォルダ名(例:
OneDrive - Contoso
)を確認してください。次に、管理者としてPowerShellを起動し、以下のコードを実行します。
$businessOneDriveName
の値は、ご自身の環境に合わせて変更してください。
# ↓↓↓ ここに法人用OneDriveの正確な名前を入力してください
$businessOneDriveName = "OneDrive - YourBusinessName"
# レジストリから該当するCLSIDを検索します
$clsidPath = "HKCU:\Software\Classes\CLSID"
$oneDriveKey = Get-ChildItem -Path $clsidPath -Recurse -ErrorAction SilentlyContinue | Where-Object {
(Get-ItemProperty -Path $_.PSPath -Name "System.FileAs" -ErrorAction SilentlyContinue)."System.FileAs" -eq $businessOneDriveName
}
if ($oneDriveKey) {
$clsid = $oneDriveKey.PSChildName
$pinPath = "HKCU:\Software\Classes\CLSID\$clsid"
# System.IsPinnedToNameSpaceTree の値を1に設定してピン留めします
Set-ItemProperty -Path $pinPath -Name "System.IsPinnedToNameSpaceTree" -Value 1 -Type DWord -Force
Write-Host "設定が完了しました。エクスプローラーを再起動するか、PCを再起動して変更を確認してください。" -ForegroundColor Green
} else {
Write-Host "指定された名前のOneDriveが見つかりませんでした。`$businessOneDriveName の値が正しいか確認してください。" -ForegroundColor Red
}
このスクリプトは、指定された名前を持つOneDriveのCLSIDを自動的に探し出し、ナビゲーションウィンドウにピン留めするためのレジストリ値を設定します。スクリプト実行後、エクスプローラーを再起動するか、PCを再起動すると変更が適用されます。